python 字典如何一键对多个值

发布于 2020-02-18 21:39:56

方法1:

d = {}
lst = [(1,'apple'),(2,'orange'),(1,'compute')]
for k,v in lst:
    if k not in d:
        d[k]=[]
    d[k].append(v)

print(d) # {1: ['apple', 'compute'], 2: ['orange']}

方法2
使用defaultdict

d = {}
lst = [(1,'apple'),(2,'orange'),(1,'compute')]
# 使用defaultdict
from collections import defaultdict
d = defaultdict(list)
for k,v in lst:
    d[k].append(v)

print(d) # defaultdict(<class 'list'>, {1: ['apple', 'compute'], 2: ['orange']})
0 条评论

发布
问题