当我尝试附加到列表的值时,这里发生了什么?看来我不能。
>>>b={}
>>>b["input"]=[3,4,5]
>>>b
{'input': [3, 4, 5]}
>>>b["input"]=b["input"].append(3)
>>>b
{'input': None}
我在这里遗漏了什么吗?
答案 0 :(得分:3)
append
是一种就地方法,始终返回None
。你的代码应该是:
b["input"]=b["input"] + [3]
甚至更好:
b["input"].append(3)
答案 1 :(得分:2)
您将b["input"]
重新分配给append
的返回值,该值会更改列表并且不会返回任何内容。
只需更改它:
b["input"].append(3)
答案 2 :(得分:2)
b["input"].append(3)
返回None
,您将其分配回b["input"]
。因此,该密钥的值变为None
。
只需删除作业部分。
>>> b["input"].append(3)
答案 3 :(得分:2)
当您使用b["input"].append(3)
时,修改字典,但!它不会返回任何!
所以你最好做b["input"].append(3)