向Python字典添加术语
我有以下有效字典。我试图在“扩展模块”组下添加另一组术语 我想在“扩展模块”下添加以下内容,但不删除“1” 下面的代码添加了我想要的内容,但删除了现有的术语向Python字典添加术语,python,dictionary,hierarchy,Python,Dictionary,Hierarchy,我有以下有效字典。我试图在“扩展模块”组下添加另一组术语 我想在“扩展模块”下添加以下内容,但不删除“1” 下面的代码添加了我想要的内容,但删除了现有的术语 print lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'][1]['expan_model'] lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'] = { 2: {} } lan_router['HOST
print lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'][1]['expan_model']
lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'] = { 2: {} }
lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'][2] = {'pic_slot' : 1, 'expan_model' : 'EX45504XSFP'}
您不需要线路-
lan_路由器['HOSTNAME1']['chassis'][0]['expansion_modules']={2:{}
,它正在替换expansion_modules
中的字典,只需删除此项并执行rest即可
代码-
print lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'][1]['expan_model']
lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'][2] = {'pic_slot' : 1, 'expan_model' : 'EX45504XSFP'}
您不需要线路-
lan_路由器['HOSTNAME1']['chassis'][0]['expansion_modules']={2:{}
,它正在替换expansion_modules
中的字典,只需删除此项并执行rest即可
代码-
print lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'][1]['expan_model']
lan_router['HOSTNAME1']['chassis'][0]['expansion_modules'][2] = {'pic_slot' : 1, 'expan_model' : 'EX45504XSFP'}
按如下方式访问它:
lan_路由器['HOSTNAME1']['chassis'][0]['expansion_modules'][2]={}
像这样访问它:
lan_路由器['HOSTNAME1']['chassis'][0]['expansion_modules'][2]={}
Anand的答案是正确的,因为它回答了您的问题
我想补充一点,通常以[0,1,…]为键的字典应该只是列表。而不是:
'expansion_modules':{
1:{
'pic_slot': 1,
'expan_model': 'EX4550VCP'
},
2:{ ... }
}
也许你应该:
'expansion_modules':[
{
'pic_slot': 1,
'expan_model': 'EX4550VCP'
},
{ ... }
]
阿南德的回答是正确的,因为它回答了你的问题 我想补充一点,通常以[0,1,…]为键的字典应该只是列表。而不是:
'expansion_modules':{
1:{
'pic_slot': 1,
'expan_model': 'EX4550VCP'
},
2:{ ... }
}
也许你应该:
'expansion_modules':[
{
'pic_slot': 1,
'expan_model': 'EX4550VCP'
},
{ ... }
]
放下第二行,放下第二行。