📅  最后修改于: 2023-12-03 14:40:41.951000             🧑  作者: Mango
Python 中的 defaultdict
是一个非常有用的数据结构,它继承自 Python 内置的 dict
对象。与普通的 dict
不同,defaultdict
在被访问的键不存在时会自动创建一个默认值。
defaultdict
的使用非常简单,只需在创建对象时指定默认值即可:
from collections import defaultdict
# 创建一个默认值为 0 的 defaultdict
counter = defaultdict(int)
在访问一个不存在的键时,defaultdict
会自动创建一个默认值:
counter = defaultdict(int)
counter['key1'] += 1
counter['key2'] += 1
counter['key3'] += 1
print(counter) # defaultdict(<class 'int'>, {'key1': 1, 'key2': 1, 'key3': 1})
如果指定的默认值为列表、集合等可变对象,则可以方便地实现项目计数的功能:
from collections import defaultdict
counter = defaultdict(list)
for item in ['a', 'b', 'c', 'a']:
counter[item].append(1)
print(counter) # defaultdict(<class 'list'>, {'a': [1, 1], 'b': [1], 'c': [1]})
defaultdict
是 Python 中非常方便的一个数据结构,可以在访问不存在的键时自动创建默认值。在实现项目计数等功能时,使用 defaultdict
可以减少一些冗余的代码,提高程序的可读性和效率。