我有一个字典列表。
dictList = [
{'name': 'some name'},
{'name': 'some other name'},
{'age': 'some age'},
{'last_name': 'some last name'}
]
在那个字典列表中,每个字典都有一个键和一个对应于该键的值,如上所示。
我需要创建一个字典,其中包含来自所有字典的键,并且每个键的每个值都是一个包含字典列表中的项目值的集合。在示例中,它将是这样的:
expected_dict = {
'name': ['some name', 'some other name'],
'age': ['some age'],
'last_name': ['some last name']
}
我如何在 Python 中执行此操作?
请您参考如下方法:
collections.defaultdict 是一种方式:
from collections import defaultdict
d = defaultdict(list)
dictList = [
{'name': 'some name'},
{'name': 'some other name'},
{'age': 'some age'},
{'last_name': 'some last name'}
]
for i in dictList:
for k, v in i.items():
d[k].append(v)
# defaultdict(list,
# {'age': ['some age'],
# 'last_name': ['some last name'],
# 'name': ['some name', 'some other name']})
