具有默认值的字典
可作为 defaultdict
在标准库中使用
from collections import defaultdict
d = defaultdict(int)
d['key'] # 0
d['key'] = 5
d['key'] # 5
d = defaultdict(lambda: 'empty')
d['key'] # 'empty'
d['key'] = 'full'
d['key'] # 'full'
[*]或者,如果你必须使用内置的 dict
类,using dict.setdefault()
将允许你在访问之前不存在的密钥时创建默认值:
>>> d = {}
{}
>>> d.setdefault('Another_key', []).append("This worked!")
>>> d
{'Another_key': ['This worked!']}
请记住,如果要添加许多值,dict.setdefault()
将在每次调用时创建初始值的新实例(在此示例中为 []
) - 这可能会产生不必要的工作负载。
[*] Python Cookbook,第 3 版,David Beazley 和 Brian K. Jones(O’Reilly)。版权所有 2013 David Beazley 和 Brian Jones,978-1-449-34037-7。