我想要一本附有新词典的词典。
t = {}
t['bush_mod']={} # Toplevel
ana1 = {}
ana1['ana1_lin_001']={}
t['bush_mod'] = ana1 # Add below Toplevel
ana2 = {}
ana2['ana2_lin_001'] = {}
ana2['ana2_lin_002'] = {}
t['bush_mod'] = ana2 # Add below Toplevel
当我添加ana2
时,字典t
被覆盖,我不想要。
OUT: {'bush_mod': {'ana2_lin_001': {}, 'ana2_lin_002': {}}}
我希望将ana2
作为Toplevel下面的第二个dict(附加)。
OUT: {'bush_mod': {'ana1_lin_001': {}},{'ana2_lin_001': {}, 'ana2_lin_002': {}}}
如果有人可以帮我解释语法,那将会非常有用。
提前致谢!
答案 0 :(得分:1)
如果您想坚持使用嵌套字典,我认为dict.update
可能是一个选项:
t = {}
t['bush_mod']={}
ana1 = {}
ana1['ana1_lin_001']={}
ana2 = {}
ana2['ana2_lin_001'] = {}
ana2['ana2_lin_002'] = {}
t['bush_mod'].update(ana1)
t['bush_mod'].update(ana2)
这样t
是:
{'bush_mod': {'ana1_lin_001': {}, 'ana2_lin_001': {}, 'ana2_lin_002': {}}}
dict.update
此处将ana1
和ana2
的键值对添加到字典t['bush_mod
中``
答案 1 :(得分:-2)
你需要为字典中的每个元素使用不同的键...它会覆盖,因为你曾两次使用'bush_mod'......
你需要让t ['bush_mod'] = []然后在那个列表中添加东西。
t['bush_mod'] = []
t['bush_mod'].append(ana1)
t['bush_mod'].append(ana2)