以 Python 方式组合两个字典
通常,在 Python 中使用字典时,我们需要将多个字典合并为一个字典。这种情况下的常见要求是组合字典,为两者中出现的键添加值。
例如,考虑以下两个字典:
Dict A: {'a': 1, 'b': 2, 'c': 3} Dict B: {'b': 3, 'c': 4, 'd': 5}
我们的目标是合并这些字典得到以下结果:
{'a': 1, 'b': 5, 'c': 7, 'd': 5}
换句话说,如果一个键同时出现在两个字典中,则它们的值应该相加向上,而仅存在于一个字典中的键应保留其原始值。
在 Python 中实现此目的的一种优雅方法是利用集合模块中的 Counter 类:
from collections import Counter A = Counter({'a': 1, 'b': 2, 'c': 3}) B = Counter({'b': 3, 'c': 4, 'd': 5}) result = A + B
Counter 类通过提供一种简单的方法来跟踪值的出现次数(计数),从而扩展了字典的功能。在我们的例子中,我们为两个字典创建 Counter 对象,然后使用运算符将它们组合起来。结果是一个新的 Counter 对象,其中累积匹配键的计数。将 Counter 对象转换回字典即可为我们提供所需的组合字典。
以上是我如何以 Python 方式组合两个字典,对公共键的值求和?的详细内容。更多信息请关注PHP中文网其他相关文章!