在Python 3.5中,如果我有两个具有相同键和整数值的字典,则可以这样添加它们:
x = {'a': 1, 'b': 2}
y = {'b': 3, 'c': 4}
z = {**x, **y}
但是,如果我有很长的词典列表共享x
和y
的格式怎么办?在这种情况下,z
的语法是什么?
答案 0 :(得分:1)
对于列表中任意数量的字典,只需使用循环即可,这是惯用的方式:
z = {}
for d in list_of_dicts:
z.update(d)
答案 1 :(得分:0)
>>> a = {1:11}
>>> b = {2:22}
>>> c = {3:33}
>>> list_abc = [a,b,c]
>>> from collections import ChainMap
>>> dict(ChainMap(*list_abc))
{1: 11, 2: 22, 3: 33}
>>>
答案 2 :(得分:0)
x = {'a': 1, 'b': 2}
y = {'b': 3, 'c': 4}
z = {'b': 3, 'c': 4}
result = x.copy()
for d in (y,z):
result.update(d)