python往列表里面添加数据的方法以及各种方法时所用时间
- 循环
def aa():
arr = []
for a in range(1000):
arr.append(a)
print("列表追加 "+str(timeit.timeit('aa()',setup="from __main__ import aa",number=10000)))
- 加法
def bb():
arr=[]
for a in range(1000):
arr=arr+[a]
print("列表加法 "+str(timeit.timeit('bb()',setup="from __main__ import bb",number=10000)))
- range的方法
def dd():
return list(range(1000))
print("range方法 "+str(timeit.timeit('dd()',setup="from __main__ import dd",number=10000)))
- 推导式
def ee():
return [i for i in range(1000)]
print("推导式 "+str(timeit.timeit('ee()',setup="from __main__ import ee",number=10000)))
5.extend
def ff():
arr=[]
for item in range(1000):
arr.extend(["item"])
print("extend "+str(timeit.timeit('ff()',setup="from __main__ import ff",number=10000)))
6.加等于
def cc():
arr=[]
for a in range(1000):
arr+=[a]
print("列表加法 "+str(timeit.timeit('cc()',setup="from __main__ import cc",number=10000)))
运行结果
通过比较,range方法运行效率高