这种方法通过遍历两个字典的所有键,并将对应值相加:
python
def merge_dicts(d1, d2):
return {k: d1.get(k, 0) + d2.get(k, 0) for k in set(d1) | set(d2)}
利用 `defaultdict` 来累加值,遍历每个字典的项:
python
from collections import defaultdict
def merge_dicts(d1, d2):
dd = defaultdict(int)
for d in (d1, d2):
for key, value in d.items:
dd[key] += value
return dict(dd)
`Counter` 类直接支持相加操作,适用于数值类型(整数、浮点数等):
python
from collections import Counter
def merge_dicts(d1, d2):
return dict(Counter(d1) + Counter(d2))
python
d1 = {'a': 1, 'b': 2}
d2 = {'b': 3, 'c': 4}
print(merge_dicts(d1, d2)) 输出: {'a': 1, 'b': 5, 'c': 4}
根据具体需求选择合适的方法即可。
版权声明: 知妳网保留所有权利,部分内容为网络收集,如有侵权,请联系QQ793061840删除,添加请注明来意。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态
