我有两本词典
第一个 = {'id': 1, '年龄': 23} 第二 = {'id': 4, 'out': 100}
我想要输出字典为
{'id':5,'年龄':23,'out':100}
我试过了
>>> dict(first.items() + second.items()) {'年龄':23,'id':4,'out':100}
但我将 id 设为 4 但我希望它是 5 。
我有两本词典
第一个 = {'id': 1, '年龄': 23} 第二 = {'id': 4, 'out': 100}
我想要输出字典为
{'id':5,'年龄':23,'out':100}
我试过了
>>> dict(first.items() + second.items()) {'年龄':23,'id':4,'out':100}
但我将 id 设为 4 但我希望它是 5 。
你想使用collections.Counter:
from collections import Counter
first = Counter({'id': 1, 'age': 23})
second = Counter({'id': 4, 'out': 100})
first_plus_second = first + second
print first_plus_second
输出:
Counter({'out': 100, 'age': 23, 'id': 5})
如果您需要结果为 true dict
,只需使用dict(first_plus_second)
:
>>> print dict(first_plus_second)
{'age': 23, 'id': 5, 'out': 100}
如果要将第二个值添加到第一个值,可以这样做:
first = {'id': 1, 'age': 23}
second = {'id': 4, 'out': 100}
for k in second:
if k in first:
first[k] += second[k]
else:
first[k] = second[k]
print first
以上将输出:
{'age': 23, 'id': 5, 'out': 100}
您可以在之后简单地更新'id'
密钥:
result = dict(first.items() + second.items())
result['id'] = first['id'] + second['id']