繁体   English   中英

自动将密钥添加到 Python dict

[英]Automatically add key to Python dict

如果键不存在,我想自动将键添加到 Python 字典中。 例如,

a = "a"
b = "b"
c = "c"

dict = {}
dict[a][b] = c # doesn't work because dict[a] doesn't exist

如果密钥不存在,我如何自动创建它们?

使用collections.defaultdict

def recursively_default_dict():
    return collections.defaultdict(recursively_default_dict)

my_dict = recursively_default_dict()
my_dict['a']['b'] = 'c'
from collections import defaultdict
d = defaultdict(dict)
d['a']['b'] = 'c'

另外,使用dict时请小心 - 它在 python 中有一个含义: https : //docs.python.org/2/library/stdtypes.html#dict

对于简短的脚本,您还可以使用这一行:

d = {}
d.setdefault(a, {})[b] = c

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM