【发布时间】:2017-11-30 01:59:15
【问题描述】:
我正在尝试为我的 CG 管道自动创建菜单。我有很多脚本,手动维护管道变得很麻烦。我只想在每个具有菜单项层次结构的模块中放置一个嵌套字典变量——它会告诉菜单构建器脚本将菜单项放在哪里。
基本上,我无法弄清楚如何像这样合并字典:
dict_1 = {
'ROOT DIV A' : {
'Root Menu A': {
'SUB DIV A' : {
'Sub Menu A':{
'command' : 'import commands',
'annotation' : 'some command'
}
}
}
}
}
dict_2 = {
'ROOT DIV A' : {
'Root Menu A': {
'SUB DIV A' : {
'Sub Menu B':{
'command' : 'import commands',
'annotation' : 'some command'
}
}
}
}
}
dict_3 = {
'ROOT DIV A' : {
'Root Menu B':{
'command' : 'import commands',
'annotation' : 'some command'
}
}
}
输出如下所示:
result_dict = {
'ROOT DIV A' : {
'Root Menu A': {
'SUB DIV A' : {
'Sub Menu A':{
'command' : 'import commands',
'annotation' : 'some command'
},
'Sub Menu B':{
'command' : 'import commands',
'annotation' : 'some command'
}
}
},
'Root Menu B':{
'command' : 'import commands',
'annotation' : 'some command'
}
}
}
我尝试过更新,但它似乎覆盖了值。我在这里尝试了一堆递归函数示例,但没有找到深度嵌套字典的示例(只有单个嵌套)。我想要比那些硬编码示例更动态的东西。我也在考虑继续这个方向,因为我不确定这是否可能,所以对此进行一些确认也会有所帮助。谢谢!
【问题讨论】:
标签: python dictionary nested