方案一:
(1) list作为dict的值,值允许重复,append添加值
key = 0
value = [1,5]
exp = dict()
exp.setdefault(key,[]).append(value)
value = [2,5]
exp.setdefault(key,[]).append(value)
print(exp)
输出: {0: [[1, 5], [2, 5]]}
(2)set作为dict的值,值不允许重复,add添加值
key = 0
value = 1
exp = dict()
exp.setdefault(key,set()).add(value)
value = 2
exp.setdefault(key,set()).add(value)
print(exp)
输出:{0: {1, 2}}
方案二:
使用collections.defaultdict方法
(1)collections.defaultdict(list),值可以重复
import collections
key = 0
value = 1
exp = collections.defaultdict(list)
exp[key].append(value)
value = 1
exp[key].append(value)
print(exp)
输出:defaultdict(<class 'list'>, {0: [1, 1]})
(2)collections.defaultdict(set),值不允许重复
import collections
key = 0
value = 1
exp = collections.defaultdict(set)
exp[key].add(value)
value = 1
exp[key].add(value)
value = 5
exp[key].add(value)
print(exp)
输出:defaultdict(<class 'set'>, {0: {1, 5}})