python里面“+”与append()的区别,并且用代码测试二者的运行速度。

不想你离开。 提交于 2020-03-21 12:52:55

如果你对内存地址的概念不是很理解的话,很容易就认为二者用法一样,应该没什么大的区别,其实二者区别还是比较明显的。

先来看“+”,这个字符表示为列表添加元素,严格意义来讲,"+"并不是真的为列表添加元素,而是创建一个新的列表,并且将原列表的元素和要添加的元素依次复制到新列表的内存空间里面。会改变列表内存中的地址。

append()方法,是在原有的列表里面添加元素,不会改变列表的内存中的首地址。

下面我将用代码来测试一下二者的添加速度:

 1 import time
 2 
 3 result = []
 4 start = time.time()
 5 for i in range(10000):
 6     result = result + [i]
 7 print(len(result), ",", time.time() - start)
 8 
 9 result = []
10 start = time.time()
11 for i in range(10000):
12     result.append(i)
13 print(len(result), ",", time.time() - start)

运行结果:

从运行结果来看,使用append()的添加速度要快于"+"。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!