有什么Python方式可以合并两个字典(为同时出现在两个字典中的键添加值)?

发布于 2021-02-02 23:20:46

例如,我有两个字典:

Dict A: {'a': 1, 'b': 2, 'c': 3}
Dict B: {'b': 3, 'c': 4, 'd': 5}

我需要一种“结合”两个字典的pythonic方式,使得结果是:

{'a': 1, 'b': 5, 'c': 7, 'd': 5}

也就是说:如果一个键同时出现在两个字典中,则将其值相加;如果仅出现在一个字典中,则保留其值。

关注者
0
被浏览
192
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    用途collections.Counter

    >>> from collections import Counter
    >>> A = Counter({'a':1, 'b':2, 'c':3})
    >>> B = Counter({'b':3, 'c':4, 'd':5})
    >>> A + B
    Counter({'c': 7, 'b': 5, 'd': 5, 'a': 1})
    

    计数器基本上是的子类dict,因此您仍然可以使用该类型对它们执行其他所有操作,例如遍历它们的键和值。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看