在Python中将列表附加到自身
我想给自己附上一份清单,我想这会有用的:在Python中将列表附加到自身,python,list,append,Python,List,Append,我想给自己附上一份清单,我想这会有用的: x = [1,2] y = x.extend(x) print y 我想找回[1,2,1,2],但我得到的只是内置的无。我做错了什么?我使用的是Python v2.6x.extend(x)不会返回新副本,它会修改列表本身 只需打印x 您也可以使用x+xx。extend(x)将在适当位置扩展x >>> print x [1, 2, 1, 2] x.extend(x)就地修改x 如果您想要一个新的、不同的列表,请使用y=x+x如果您想
x = [1,2]
y = x.extend(x)
print y
我想找回[1,2,1,2]
,但我得到的只是内置的无
。我做错了什么?我使用的是Python v2.6x.extend(x)
不会返回新副本,它会修改列表本身
只需打印x
您也可以使用x+x
x。extend(x)将在适当位置扩展x
>>> print x
[1, 2, 1, 2]
x.extend(x)
就地修改x
如果您想要一个新的、不同的列表,请使用
y=x+x
如果您想要列表的新副本,请尝试:
x = [1,2]
y = x + x
print y # prints [1,2,1,2]
区别在于extend
修改列表“就地”,这意味着即使列表被修改,它也将始终返回None
。或仅:
x = [1,2]
y = x * 2
print y
您正在创建
[x,x]
,如果x
中的一个元素发生变化,它将在y
的另一个索引中也发生变化:@Schorsch这对于[x]*2
是正确的,它相当于[x]+[x]
。但是,x*2
相当于x+x
,它在这种情况下创建了一个“浅”值列表。