为什么newList = list.remove(x)返回None?

时间:2015-12-05 03:42:59

标签: python syntax

我在下面有一个列表,我想删除一个值并将其设置为一个新变量。为什么它会返回None?

    aList=[1,2,3,4,5]
    newList = aList.remove(1)
    print(newList)
    #prints None

但是当我这样做时,它的工作方式与我期望的完全一样。

    aList=[1,2,3,4,5]
    aList.remove(1)
    newList = aList
    print(newList)
    #prints [2,3,4,5]

1 个答案:

答案 0 :(得分:2)

在Python中,当一个函数改变一个对象时,它通常返回None
否则它返回新对象。

remove会改变原始对象,这就是为什么当你执行aList.remove(1)然后打印列表时,你会看到列表不同。