我试图添加到类似下面的字典
d = {"feline" : {"lion" : 22,
"tiger" : 88 },
"canine" : {"dog" : 12,
"wolf" : 53,
"coyote" : 77} }
我试图将'cat'和55添加到feline下的字典中,但我不确定如何访问它。这就是我的尝试
fp = raw_input("enter a feline type")
apa = input("enter an amount")
for keys in d :
if fp not in d[keys] :
d['feline'] = {fp : int(apa)}
但是当我这样做时,老虎和狮子等的值会被删除,输入会被替换掉。例如,如果我想在'feline'部分下添加cat,请使用上面的代码我得到...
{'feline': {'cat ': 55}, 'canine': {'coyote': 77, 'wolf': 53, 'dog': 12}}
如何在不使用字典覆盖它们的情况下将狮子和老虎留在字典中
答案 0 :(得分:8)
只需使用像这样的项目分配
d['feline']['cat'] = 55
对于您的情况,您可能想要这样做,
d['feline'][fp] = int(apa)
当你说,
d['feline'] = {fp : int(apa)}
您正在使用新字典(d['feline']
)替换{fp : int(apa)}
中已有的内容,而不是像上面所示添加新密钥和相应值。