1
我有一個字典作爲 -的Python:添加「N」字典的值具有相同的鍵和存儲到一個字典
dict_1 = { 'A' : {'1029' : 3, '1039' : 5}, 'B' : {'1029' : 3, '1039' : 5}, 'C' : {'1008' : 1, '1029' : 3, '1039' : 8, '1050' : 1}, 'D' : {'1008' : 1, '1029' : 10, '1039' : 3}}
我想要一個結果作爲此外,所有類似的數字。即
result = {'1008' : 2, '1029' : 19, '1039' : 21, '1050' : 1}
方法我都用過:
我創建的列表與dict_1作爲
list_new = [ {'1029' : 3, '1039' : 5}, {'1029' : 3, '1039' : 5}, {'1008' : 1, '1029' : 3, '1039' : 8, '1050' : 1}, {'1008' : 1, '1029' : 10, '1039' : 3}]
然後我用下面的代碼:
for i in range(0, len(list_new)):
for j in range(i + 1, len(list_new)):
if (i == 0 and j == 1):
dict_12 = {k: list_new[0].get(k, 0) + list_new[1].get(k, 0) for k in set(list_new[0]) | set(list_new[1])}
else:
dict_13 = {k: dict_12.get(k, 0) + list_new[j].get(k, 0) for k in set(dict_12) | set(list_new[j])}
dict_12.clear()
dict_12.update(dict_13)
但它給人一種錯誤的結果..如果我將在上面的代碼中評論最後2行,那麼它在3次迭代中工作正常。但我希望代碼運行'n'迭代。
對此,我需要存儲以前的結果。任何人都可以請幫助我一樣。
提前致謝!