- collections.defaultdict类,本身提供了默认值的功能,默认值可以是整形,列表,集合等。
- defaultdict是dict的子类。但它与dict最大的区别在于,如果程序试图根据不存在的key访问value,会引发KeyError异常;而defaultdict 提供default _factory 属性,该为不存在的key来自动生成生成默认的value。
- 需求:我们想要一个能将键(key) 映射到多个值的字(即所谓的一键多值字典)
导入模块:
from collections import defaultdict
整形示例:
from collections import defaultdict
d1=defaultdict(int)
print(d1)
d1['views']+=1
d1['transfer']+=1
print(d1)
列表示例:
from collections import defaultdict
d = defaultdict(list)
print(d)
d['allow_users'].append('westos')
d['deny_users'].extend(['user1', 'user2'])
print(d)
元组示例:
from collections import defaultdict
d = defaultdict(set)
print(d)
d['love_movies'].add("黑客帝国")
d['dislike_movies'].update({
'前任3', '电影xxxx'})
print(d)