关于python中insert可以在指定的索引前插入元素,也即是插入的元素的索引即为指定的索引
而append方法,是指的在列表的末尾处添加/追加一个元素
两种方法都是为列表新增加了一个元素对象,但两者的效率谁更快一些呢,我们可以通过简单的代码进行比较,创建py文件insertvsappend.py
import datetime listA=[1,2,3] startTime = datetime.datetime.now() for i in range(0,100000): listA.insert(0,'a') endTime = datetime.datetime.now() print('Time spent by insert',endTime-startTime) listB=[1,2,3] startTime = datetime.datetime.now() for i in range(0,100000): listA.append('a') endTime = datetime.datetime.now() print('Time spent by append',endTime-startTime)
运行结果如下,可以看到的2秒的差距了,很明显append效率要快一些:
[qq5201351@localhost ~]$ python3 insertVSappend.py Time spent by insert 0:00:02.422428 Time spent by append 0:00:00.015790 [awsadm@ip-172-18-88-170 ~]$
当然因为上面的的次数是10万,可能差距不大,如果我们将此数调整到50万,100万,就能看到巨大的差距
再以50万作一个比较、最后执行结果如下,54秒的差距了(两次运行笔者使用的机器配置为4核16G的配置):
Time spent by insert 0:00:54.051870
Time spent by append 0:00:00.047789
最后总结一下,在对列表操作时,如果元素个数不多,使用insert与append没有太多在差距
如果元素数据太多时,肯定还是append的效率更快一些~
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17016698.html
作者:一名卑微的IT民工
出处:https://www.cnblogs.com/5201351
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
由于博主的水平不高,文章没有高度、深度和广度,只是凑字数,不足和错误之处在所难免,希望大家能够批评指出。
博主是利用读书、参考、引用、复制和粘贴等多种方式打造成自己的文章,请原谅博主成为一个卑微的IT民工!