我有一个嵌套字典.是否只有一种方法可以安全地获得价值?
try:
example_dict['key1']['key2']
except KeyError:
pass
Run Code Online (Sandbox Code Playgroud)
或者python有一个像get()嵌套字典的方法?
你将如何根据列表的值修改/创建嵌套dicts的dict中的键/值,其中列表的最后一项是dict的值,其余的项目是否依赖于dicts中的键?这将是列表:
list_adddress = [ "key1", "key1.2", "key1.2.1", "value" ]
Run Code Online (Sandbox Code Playgroud)
在解析命令行参数时,这只会是一个问题.很明显,在脚本中修改/创建这个值非常容易使用dict_nested["key1"]["key1.2"]["key1.2.1"]["value"].
这将是dicts的嵌套词典:
dict_nested = {
"key1": {
"key1.1": {
"...": "...",
},
"key1.2": {
"key1.2.1": "change_this",
},
},
"key2": {
"...": "..."
},
}
Run Code Online (Sandbox Code Playgroud)
我想在这种情况下,需要像递归函数或列表推导这样的东西.
def ValueModify(list_address, dict_nested):
...
...
ValueModify(..., ...)
Run Code Online (Sandbox Code Playgroud)
此外,如果其中的项目list_address会转到不存在的词典中的键,则应创建它们.