在Python中将列表附加到自身

时间:2011-07-22 17:07:01

标签: python list append

我想在自己附上一份清单,我认为这样可行:

x = [1,2]
y = x.extend(x)
print y

我想回来[1,2,1,2],但我得到的只是内置None。我究竟做错了什么?我正在使用Python v2.6

5 个答案:

答案 0 :(得分:9)

x.extend(x)不会返回新副本,它会修改列表本身。

只需打印x

您也可以使用x + x

答案 1 :(得分:2)

x.extend(x)就地修改x

如果您想要一个新的不同列表,请使用y = x + x

答案 2 :(得分:0)

x.extend(x)将扩展x inplace。

>>> print x

[1, 2, 1, 2]

答案 3 :(得分:0)

如果您想要列表的新副本,请尝试:

x = [1,2]
y = x + x
print y # prints [1,2,1,2]

区别在于extend修改了“就地”列表,这意味着即使列表被修改,它也会始终返回None

答案 4 :(得分:-1)

或只是:

x = [1,2]
y = x * 2
print y