Python 无法附加到返回的列表?
为什么Python 无法附加到返回的列表?,python,Python,为什么f().append('a')是None==True,即使f()。\uuu class\uuu是和f()===['b','c'],因为append()返回无,而不是列表对象。使用 def f(): lst = ['a', 'b', 'c'] return lst[1:] 因为append() l = f() l.append('a') ... 希望这会有所帮助。在这种情况下,充分了解表达式和命令之间的差异总是很好的。基本上有两种方法可以将值x附加到列表l 使用命令:l.
f().append('a')是None==True
,即使f()。\uuu class\uuu
是
和f()===['b','c']
,因为append()
返回无
,而不是列表对象。使用
def f():
lst = ['a', 'b', 'c']
return lst[1:]
因为append()
l = f()
l.append('a')
...
希望这会有所帮助。在这种情况下,充分了解表达式和命令之间的差异总是很好的。基本上有两种方法可以将值x
附加到列表l
使用命令:l.append(x)
。通常命令不返回任何值;它会产生某种副作用
使用一个表达式,即l+[x]
,它代表一个值,不做任何事情。即,您分配l=l+[x]
+1:这需要一种“StdPython”式的回答。变异对象的方法(几乎)从不返回值pop()
是一个值得注意的例外。请对此进行评估:[]追加('a')
f()+['a']