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
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"]
n
[1,2,3,"b"]