Python - 将一个字典添加到另一个字典

Ole*_*oda 1 python dictionary

我想在Python中用另一个字典更新一个字典,但是如果有一些相同的参数,则应该添加它们的值.例如:

a = {"word_1" : 1, "word_2": 2}
b = {"word_2" : 5, "word_3": 7}
Run Code Online (Sandbox Code Playgroud)

输出必须是:

{"word_1" : 1, "word_2": 7, "word_3": 7}
Run Code Online (Sandbox Code Playgroud)

我已经google了很多,但在大多数答案值重写,我想添加它们这是我的解决方案:

    for i in a.keys():
        if i in b.keys():
            b[i] += a[i]
        else:
            b[i] = a[i]
Run Code Online (Sandbox Code Playgroud)

有最有效的方法吗?

Pat*_*ugh 10

使用a Counter,这是一种特殊的字典来计算对象.

from collections import Counter

a = Counter({"word_1" : 1, "word_2": 2})
b = Counter({"word_2" : 5, "word_3": 7})
print(a + b)
Run Code Online (Sandbox Code Playgroud)

版画

Counter({'word_2': 7, 'word_3': 7, 'word_1': 1})
Run Code Online (Sandbox Code Playgroud)