Contents
20.1.6. 字典中的键映射多个值¶
#!/usr/bin/env python
#-*- coding:utf8 -*-
# auther; 18793
# Date:2019/7/28 16:47
# filename: 06.字典中的键映射多个值.py
from collections import defaultdict
d = defaultdict(list)
d['a'].append(1)
d['a'].append(2)
d['c'].append(4)
print(d)
s = defaultdict(set)
s['a'].add(1)
s['a'].add(2)
s['c'].add(4)
print(s)
输出信息
defaultdict(<class 'list'>, {'c': [4], 'a': [1, 2]})
defaultdict(<class 'set'>, {'c': {4}, 'a': {1, 2}})
普通字典实现¶
d = {}
d.setdefault('hu', []).append(1)
d.setdefault('hu', []).append(2)
d.setdefault('hu', []).append(4)
print(d)
输出信息
{'hu': [1, 2, 4]}
自己造轮子
创建一个多值映射的字典
d = {}
for key, value in pairs:
if key not in d:
d[key] = []
d[key].append(value)
使用defaultdict来实现
d = defaultdict(list)
for key, value in pairs:
d[key].append(value)