-3
A
回答
1
这是一个班轮,将做到这一点:
dict1 = {'a': 5, 'b': 7}
dict2 = {'a': 3, 'c': 1}
result = {key: dict1.get(key, 0) + dict2.get(key, 0)
for key in set(dict1) | set(dict2)}
# {'c': 1, 'b': 7, 'a': 8}
注意set(dict1) | set(dict2)
是集两者的字典的键。如果密钥存在,则dict1.get(key, 0)
返回dict1[key]
,否则0
。
0
这里是你一个很好的功能:
def merge_dictionaries(dict1, dict2):
merged_dictionary = {}
for key in dict1:
if key in dict2:
new_value = dict1[key] + dict2[key]
else:
new_value = dict1[key]
merged_dictionary[key] = new_value
for key in dict2:
if key not in merged_dictionary:
merged_dictionary[key] = dict2[key]
return merged_dictionary
通过写
dict1 = {'a': 5, 'b': 7}
dict2 = {'a': 3, 'c': 1}
result = merge_dictionaries(dict1, dict2)
结果将是:
{'a': 8, 'b': 7, 'c': 1}
0
您可以使用collections.Counter
它实现此外+
这样:
>>> from collections import Counter
>>> dict1 = Counter({'a': 5, 'b': 7})
>>> dict2 = Counter({'a': 3, 'c': 1})
>>> dict1 + dict2
Counter({'a': 8, 'b': 7, 'c': 1})
,如果你真的想要的结果作为字典,你可以将它转换回算账:
>>> dict(dict1 + dict2)
{'a': 8, 'b': 7, 'c': 1}
相关问题
- 1. Python词典中的两个字典,增加特定键值
- 2. Swift3循环词典增加值
- 3. 为词典增加更多值python 3
- 4. 字典中合并词典及增加值
- 5. 从两个现有的词典创建一个词典
- 6. 结合词典的两个词典(Python)
- 7. 增加字典中的值?
- 8. 乘以两个词典中的值并将其相加
- 9. Python的追加字典词典中值
- 10. python词典匹配两个字典中的键值
- 11. 加入两个词典并处理它的共同价值
- 12. 找到两个词典
- 13. 合并两个词典
- 14. 带两个键的词典?
- 15. 相交两个词典
- 16. 另一本词典中的词典+一个键的多个值
- 17. 追加到词典列表的增加价值,每一个关键
- 18. 词典:增加一个键的价值也被添加到其他键
- 19. 从Python词典求和值
- 20. 从词典获取值
- 21. Marklogic值词典和单词词典
- 22. 比较python中的两个词典
- 23. 在Python中相交两个词典
- 24. 比较两个词典按键,并创建列表值词典在Python
- 25. 比较两个词典的关键字/值,并将其放入新词典
- 26. 向词典中添加键和值
- 27. Python:增加循环中的字典值
- 28. 合并两本词典有两个单独的值
- 29. 从一本词典中总结出第二个值与另一个词典中的所有值
- 30. jquery - 从C#词典中获取价值