У меня возникли проблемы с обновлением словарей в python. Вот функция со словарем:Обновление словаря с функциями
def customer_dictionary(balfilename):
d = {}
bafile = open(balfilename, 'r')
for line in bafile:
dic = line.split()
d[dic[1]] = [dic[0] , dic[2]]
return d
bafile.close()
Теперь то, что я хочу сделать, это создать еще одну функцию, которая выглядит как:
def update_customer_dictionary(cdictionary, transfilename):
transfile = open(transfilename. 'r')
for line in transfile:
act, trans = line.strip().split()
if act in dictionary:
cdictionary[act][1] += float(trans)
else:
cdictionary[act][2] = [act][2]
Я просто не могу показаться, чтобы выяснить, как обновить словарь сделанный в предыдущей функции с помощью этой новой функции. cdictionary - это предыдущий словарь.
File 1:
139-28-4313 115 1056.30
706-02-6945 135 -99.06
595-74-5767 143 4289.07
972-87-1379 155 3300.26
814-50-7178 162 3571.94
632-72-6766 182 3516.77
699-77-2796 191 2565.29
File 2:
380 2932.48
192 -830.84
379 2338.82
249 3444.99
466 -88.33
466 2702.32
502 -414.31
554 881.21
Можете ли вы предоставить образец того, как должен выглядеть ваш словарь, пожалуйста? Кроме того, пожалуйста, покажите свой код для 'update_customer_dictionary' – idjaw
, чтобы форматировать код как код, поэтому более читаемый. – shafeen
Почему бы просто не перевести словарь, созданный' customer_dictionary', в качестве параметра 'update_customer_dictionary', а затем вернуть измененный словарь? –