一尘不染

从两个字典中添加值

algorithm

dict1 = {a: 5, b: 7}
dict2 = {a: 3, c: 1}

result {a:8, b:7, c:1}

如何获得结果?


阅读 221

收藏
2020-07-28

共1个答案

一尘不染

这是一种单线工作:

dict1 = {'a': 5, 'b': 7}
dict2 = {'a': 3, 'c': 1}

result = {key: dict1.get(key, 0) + dict2.get(key, 0)
          for key in set(dict1) | set(dict2)}
# {'c': 1, 'b': 7, 'a': 8}

请注意,这set(dict1) | set(dict2)是两个词典的键集。并dict1.get(key, 0)返回dict1[key]键是否存在,0否则返回。

2020-07-28