python字典合并值相加

 2026-04-28  阅读 5  评论 0

摘要:方法一:使用collections.Counter
`Counter`类适用于统计频次,能自动处理相同键的值相加。
python
from collections import Counter

方法一:使用collections.Counter

`Counter`类适用于统计频次,能自动处理相同键的值相加。

python字典合并值相加

python

from collections import Counter

d1 = {'a': 1, 'b': 2}

d2 = {'b': 3, 'c': 4}

combined = Counter(d1) + Counter(d2)

result = dict(combined)

print(result) 输出: {'a': 1, 'b': 5, 'c': 4}

方法二:字典推导式(仅Python 3)

通过*操作合并键,并对每个键求和。

python

d1 = {'a': 1, 'b': 2}

d2 = {'b': 3, 'c': 4}

result = {k: d1.get(k, 0) + d2.get(k, 0) for k in d1.keys | d2.keys}

print(result) 输出: {'a': 1, 'b': 5, 'c': 4}

方法三:通用循环处理

适用于所有Python版本,并可扩展至多个字典。

python

d1 = {'a': 1, 'b': 2}

d2 = {'b': 3, 'c': 4}

result = {}

for d in [d1, d2]:

for key, value in d.items:

result[key] = result.get(key, 0) + value

print(result) 输出: {'a': 1, 'b': 5, 'c': 4}

方法四:逐个处理第二个字典的键值

直接遍历并累加第二个字典的项。

python

d1 = {'a': 1, 'b': 2}

d2 = {'b': 3, 'c': 4}

result = d1.copy

for key, value in d2.items:

result[key] = result.get(key, 0) + value

print(result) 输出: {'a': 1, 'b': 5, 'c': 4}

  • Counter方法:简洁高效,适合数值类型。
  • 字典推导式:Python 3专用,简洁直观。
  • 循环处理:通用性强,可处理任意数量的字典,兼容性最佳。
  • 根据具体需求和环境选择合适的方法即可。

    版权声明: 知妳网保留所有权利,部分内容为网络收集,如有侵权,请联系QQ793061840删除,添加请注明来意。

    原文链接:https://www.6g9.cn/qwsh/dd466AD5QUFhUBVU.html

    发表评论:

    关于我们
    知妳网是一个专注于知识成长与生活品质的温暖社区,致力于提供情感共鸣、实用资讯与贴心服务。在这里,妳可以找到相关的知识、专业的建议,以及提升自我的优质内容。无论是职场困惑、情感心事,还是时尚美妆、健康生活,知妳网都能精准匹配妳的需求,陪伴妳的每一步成长。因为懂妳,所以更贴心——知妳网,做妳最知心的伙伴!
    联系方式
    电话:
    地址:广东省中山市
    Email:admin@qq.com

    Copyright © 2022 知妳网 Inc. 保留所有权利。 Powered by

    页面耗时0.1211秒, 内存占用1.7 MB, 访问数据库19次