首页 > 解决方案 > 如何将具有相同键值的 Python 字典列表转换为具有值列表的字典

问题描述

我有一个这样的字典列表:

mylist = [
    {'survival': 124, 'organ': 'Stomach'}
    {'survival': 42, 'organ': 'Stomach'}
    ]

我想将其更改为具有相同键的字典以具有如下值列表:

myDict = {
  "survival":[124,42],
  "organ":["Stomach","Stomach"]
}

标签: pythonpython-3.xdictionary

解决方案


from collections import defaultdict

mylist = [
    {'survival': 124, 'organ': 'Stomach'},
    {'survival': 42, 'organ': 'Stomach'}
]

mydict_ = defaultdict(list)

for x in mylist:
    for k, v in x.items():
        mydict_[k].append(v)

mydict = dict(mydict_)
print(mydict)

结果

{'survival': [124, 42], 'organ': ['Stomach', 'Stomach']}

推荐阅读