我正在尝试更新嵌套字典中的值,而不会在键已经存在时覆盖以前的条目。例如,我有一本字典:
myDict = {}
myDict["myKey"] = { "nestedDictKey1" : aValue }
给予,
print myDict
>> { "myKey" : { "nestedDictKey1" : aValue }}
现在,我想在 "myKey"
下添加另一个条目
myDict["myKey"] = { "nestedDictKey2" : anotherValue }}
这将返回:
print myDict
>> { "myKey" : { "nestedDictKey2" : anotherValue }}
但是我想要:
print myDict
>> { "myKey" : { "nestedDictKey1" : aValue ,
"nestedDictKey2" : anotherValue }}
有没有办法更新或附加 "myKey"
新值,而不覆盖以前的值?
原文由 eric 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是 处理嵌套字典的一个非常好的通用解决方案:
这允许在任何级别设置嵌套键:
对于单层嵌套,可以直接使用
defaultdict
:这是一种仅使用
dict
的方法: