我试图创建一个嵌套的dictionary对象,但由于某些原因,它没有为范围中的每个数字创建一个键。我试图在字典中基本上有多个vlan的信息,这样我就可以访问它们,比如vlan[0],vlan[1],等等。。。但是它保存最后一个值的信息。例如,如果我把num \u of \u vlan=2。我只在vlan[1]中有值,在vlan[0]中没有值。我做错什么了?我怎样才能得到想要的结果?你知道吗
num_of_vlans=input("How many VLANS do you need?: ")
num_of_vlans=int(num_of_vlans)
for i in range(num_of_vlans):
print("Enter Information for vlan {0}".format(i+1))
vlan={i:{'name':input("Name: "),
'vlan_id':input("ID: "),
'ip':input("IP: "),},}
代码中发生的事情是每次重新初始化字典的迭代
vlan
。应该更新它。你知道吗正如Marlon所说,您在每次迭代中都将
vlan
变量重新定义为一个新的dict。在他的答案的基础上,你也可以使用dict理解(如果前一行print语句不是必需的)。你知道吗另外值得注意的是,在构建dict时,两个额外的尾随逗号是不必要的/多余的。你知道吗
相关问题 更多 >
编程相关推荐