我有这样的嵌套字典:
data = {
"2010":{
'A':2,
'B':3,
'C':5,
'D':-18,
},
"2011":{
'A':1,
'B':2,
'C':3,
'D':1,
},
"2012":{
'A':1,
'B':2,
'C':4,
'D':2
}
}
Run Code Online (Sandbox Code Playgroud)
在我的情况下,我需要在每年(从2010年到2012年)基于类似密钥对所有值求和.所以我期望的结果应该是这样的:
data = {'A':4,'B':7, 'C':12, 'D':-15}
Run Code Online (Sandbox Code Playgroud)
尝试这个,
reduce(lambda x, y: dict((k, v + y[k]) for k, v in x.iteritems()), data.values())
Run Code Online (Sandbox Code Playgroud)
结果
{'A': 4, 'B': 7, 'C': 12, 'D': -15}
Run Code Online (Sandbox Code Playgroud)