Python—合并两个带有公共键值的字典,并添加值
使用 Python 分析数据时,我们会遇到必须以这种方式合并两个字典的情况,即对键具有相同值的那些元素进行值相加。在本文中,我们将看到添加这种两个字典的情况。
For 循环和 | 运算符
采用此方法时,我们会设计一个 for 循环,以检查两个字典中键值是否存在,然后再将其相加。最后,使用 | 运算符(字典可用)合并两个字典。
示例
dictA = {'Mon': 23, 'Tue': 11, 'Sun': 6}
dictB = {'Wed': 10, 'Mon': 12, 'Sun': 4}
# Add with common key
for key in dictB:
if key in dictA:
dictB[key] = dictB[key] + dictA[key]
else:
pass
res = dictA | dictB
print(res)运行上述代码会得到以下结果 −
输出
{'Mon': 35, 'Tue': 11, 'Sun': 10, 'Wed': 10}
使用计数器
Collections 模块中的 Counter 函数可直接用于合并两个字典,这样可以保留键。然后会将值添加到匹配的键中。
示例
from collections import Counter
dictA = {'Mon': 23, 'Tue': 11, 'Sun': 6}
dictB = {'Wed': 10, 'Mon': 12, 'Sun': 4}
res = Counter(dictA) + Counter(dictB)
print(res)运行上述代码会得到以下结果 −
输出
Counter({'Mon': 35, 'Tue': 11, 'Sun': 10, 'Wed': 10})
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP