Python列表append和+的区别浅析
在python中使用列表的时候大家经常会需要向一个列表中添加一个元素,像下面这两种使用方法需要注意:
t=[1,2,3] t1=t.append([4]) t2=t+[4]
以上两种使用方式是有区别的,我们来看看实际运行的效果:
>>>t=[1,2,3] >>>t1=t.append([4]) >>>t [1,2,3,[4]] >>>t1 >>> >>>t2=t+[4] >>>t2 [1,2,3,[4],4] >>>t [1,2,3,[4]]
可以看到使用t.append([4])后,实际是在t这个列表中增加,而非我们预期的在t1中增加,并且此时t1为None。
而使用t2=t+[4]后,t2是在原用t1的基础上再增加一个元素4,而实际列表t中元素无变化。
结论:
使用append实际是修改一个列表,使用+实际是创建一个新的列表。