Python-为什么在Python中append()总是返回None?
list = [1, 2, 3]print list.append(4) ## WRONG, print does not work, append() returns None
## RIGHT:
list.append(4)
print list ## [1, 2, 3, 4]
不确定此问题是否特定于该语言以及如何append
在Python
中实现。
回答:
append是一种变异(破坏性)操作(它会在适当位置修改列表,而不是返回新列表)。进行无损等效的惯用方式append是
l = [1,2,3]print l + [4] # [1,2,3,4]
print l # [1,2,3]
回答你的问题,我的猜测是,如果append
返回新修改的列表,用户可能会认为它是非破坏性的,即他们可能会编写如下代码
m = l.append("a")n = l.append("b")
并期望n
成为[1,2,3,"b"]
以上是 Python-为什么在Python中append()总是返回None? 的全部内容, 来源链接: utcz.com/qa/431545.html