通常,我用以下代码创建字典:
dict = {}
if key not in dict:
dict[key] = [element]
else:
dict[key].append(element)
但是,如果我想对嵌套字典应用类似的方法,该怎么办? 这是我在想的事情,但是当然,它没有用。
dict = {}
if key1, key2 not in dict:
dict[key][key2] = [element]
else:
dict[key][key2].append(element)
答案 0 :(得分:3)
使用setdefault
:
d = {}
d.setdefault('a', {}).setdefault('b', []).append('element')
print(d)
# {'a': {'b': ['element']}}
d.setdefault('a', {}).setdefault('b', []).append('another_element')
# {'a': {'b': ['element', 'another_element']}}