一尘不染

用Python中的列表进行扩展的意外行为

python

我试图了解扩展在Python中是如何工作的,并且并没有达到我的期望。例如:

>>> a = [1, 2, 3]
>>> b = [4, 5, 6].extend(a)
>>> b
>>>

但我本来期望:

[4, 5, 6, 1, 2, 3]

为什么返回None而不是扩展列表?


阅读 142

收藏
2020-12-20

共1个答案

一尘不染

extend()方法将追加到现有数组并返回None。在您的情况下,您正在动态创建一个数组[4, 5, 6]-对其进行扩展,然后将其丢弃。该变量b以返回值结束None

2020-12-20