我有這樣一本字典,總和在Python嵌套字典值
data={11L: [{'a': 2, 'b': 1},{'a': 2, 'b': 3}],
22L: [{'a': 3, 'b': 2},{'a': 2, 'b': 5},{'a': 4, 'b': 2},{'a': 1, 'b': 5}, {'a': 1, 'b': 0}],
33L: [{'a': 1, 'b': 2},{'a': 3, 'b': 5},{'a': 5, 'b': 2},{'a': 1, 'b': 3}, {'a': 1, 'b': 6},{'a':2,'b':0}],
44L: [{'a': 4, 'b': 2},{'a': 4, 'b': 5},{'a': 3, 'b': 1},{'a': 3, 'b': 3}, {'a': 2, 'b': 3},{'a':1,'b':2},{'a': 1, 'b': 0}]}
在這裏,我會擺脫外鍵,並賦予新的密鑰值1,2,3等等,我想得到的結果如下圖所示,
result={1:{'a':10,'b':7},2:{'a':11,'b':18},3:{'a':12,'b':5},4:{'a':5,'b':11},5:{'a':3,'b':9},6:{'a':3,'b':2},7:{'a':1,'b':0}}
我嘗試一些像這樣的事情,但我不力獲得所需要的結果,
d = defaultdict(int)
for dct in data.values():
for k,v in dct.items():
d[k] += v
print dict(d)
我想要結果字典的鍵是動態的,就像上面的數據字典中我們有44個最高有7個鍵值對一樣,因此我們有結果字典有7個鍵等等
在字典中使用1,2和3作爲鍵意味着您可以使用列表來代替。 ;-) –