2024-05-14 09:47:29 发布
网友
我怎么能把这样的口述清单
[{'a':1}, {'b':2}, {'c':1}, {'d':2}]
变成这样的一句话
{'a':1, 'b':2, 'c':1, 'd':2}
对于Python 3.3+,有一个^{} collection:
>>> from collections import ChainMap >>> a = [{'a':1},{'b':2},{'c':1},{'d':2}] >>> dict(ChainMap(*a)) {'b': 2, 'c': 1, 'a': 1, 'd': 2}
另见:
这适用于任何长度的词典:
>>> result = {} >>> for d in L: ... result.update(d) ... >>> result {'a':1,'c':1,'b':2,'d':2}
作为comprehension:
# Python >= 2.7 {k: v for d in L for k, v in d.items()} # Python < 2.7 dict(pair for d in L for pair in d.items())
>>> L=[{'a': 1}, {'b': 2}, {'c': 1}, {'d': 2}] >>> dict(i.items()[0] for i in L) {'a': 1, 'c': 1, 'b': 2, 'd': 2}
注意:“b”和“c”的顺序与您的输出不匹配,因为dicts是无序的
如果dicts可以有多个键/值
>>> dict(j for i in L for j in i.items())
对于Python 3.3+,有一个^{} collection :
另见:
这适用于任何长度的词典:
作为comprehension:
注意:“b”和“c”的顺序与您的输出不匹配,因为dicts是无序的
如果dicts可以有多个键/值
相关问题 更多 >
编程相关推荐