📜  Python|合并具有相同键的两个字典的值(1)

📅  最后修改于: 2023-12-03 14:46:27.136000             🧑  作者: Mango

合并具有相同键的两个字典的值

在Python中,有时需要将两个字典中具有相同键的值进行合并,可以采用以下方法:

  1. 使用字典的update()方法
dict1 = {'a': 1, 'b': 2}
dict2 = {'b': 3, 'c': 4}
for key, value in dict2.items():
    dict1[key] = dict1.get(key, 0) + value
print(dict1)
# {'a': 1, 'b': 5, 'c': 4}

首先,使用items()方法获取需要合并的字典2的键值对,再将其遍历,对于在字典1中存在的键直接在原值上加上字典2中的值,如果不存在则将值初始化为0。最后输出合并后的字典1。

  1. 使用collections模块的defaultdict()方法
from collections import defaultdict
dict1 = {'a': 1, 'b': 2}
dict2 = {'b': 3, 'c': 4}
result = defaultdict(int, dict1)
for key, value in dict2.items():
    result[key] += value
print(dict(result))
# {'a': 1, 'b': 5, 'c': 4}

使用defaultdict()方法初始化一个字典,使其默认值为0。将字典1初始化到新字典中,然后遍历字典2并将值加到新字典中。最后将新字典转化为普通字典并输出。

以上两种方法都可以实现对字典中相同键的值进行合并,具体选择哪种方法取决于具体应用情景,可根据需要灵活选择。

本文介绍了两种常用的Python字典合并方法,均能够快速、方便地对具有相同键的两个字典的值进行合并。希望能够对大家有所帮助。