【发布时间】:2014-10-13 21:04:59
【问题描述】:
我有两个字典,需要合并其中相似键的值。这是一个例子:
dict1 = {'key1':[value11,value12,value13] , 'key2':[value21,value22,value23]}
dict2 = {'key1':[value14,value15] , 'key2':[value24,value25]}
我用过:
dict3 = {}
for key in (dict1.viewkeys() | dict2.keys()):
if key in dict1: dict3.setdefault(key, []).append(dict1[key])
if key in dict2: dict3.setdefault(key, []).append(dict2[key])
这给了我:
dict3 = {'key1':[[value11,value12,value13],[value14,value15]] , 'key2':[[value21,value22,value23],[value24,value25]]}
我想要的是一个简单的,比如:
期望的输出:
dict3 = {'key1':[value11,value12,value13,value14,value15] , 'key2':[value21,value22,value23,value24,value25]}
【问题讨论】:
-
可能是一个简单的
print {k:dict1.get(k, []) + dict2.get(k, []) for k in set(dict1.keys() + dict2.keys())}就可以了 -
你还想要平均值吗?
-
是的,但其他人告诉我将其作为一个单独的问题提出
-
大声笑,当你被要求编辑这个问题时,我已经回答了你删除的问题
标签: python python-2.7 dictionary