从字典中为一个键附加多个值?

时间:2017-04-11 19:30:29

标签: python python-2.7 dictionary duplicates append

我是python的新手我有一个包含许多重复键的词典

{'key1': 'value1', 'key2': 'value2','key1': 'value3', 'key3': 'value4','key1': 'value5'......}

想要这样的输出

{
"key1": [value1,value3,value5],
"key2": [value2],
"key3": [value4]

}

我该怎么做?

1 个答案:

答案 0 :(得分:0)

假设您想从包含重复键的列表/元组中实现此目的,您可以这样做:

from collections import defaultdict
dupes = (('k1', 1), ('k2', 2), ('k1', 3), ('k3', 4))
res = defaultdict(list)
for k,v in dupes:
    res[k].append(v)

print(res)
defaultdict(<type 'list'>, {'k3': [4], 'k2': [2], 'k1': [1, 3]})