Python自带数据结构的运行效率

1.List:

def test1():
    l = []
    for i in range(1000):
        l = l + [i]
def test2():
    l = []
    for i in range(1000):
        l.append(i)
def test3():
    l = [i for i in range(1000)]
def test4():
    l = list(range(1000))

import timeit
from timeit import Timer
if __name__=="__main__":
    t1 = Timer("test1()", "from __main__ import test1")
    print("concat ",t1.timeit(number=1000), "milliseconds")
    t2 = Timer("test2()", "from __main__ import test2")
    print("append ",t2.timeit(number=1000), "milliseconds")
    t3 = Timer("test3()", "from __main__ import test3")
    print("comprehension ",t3.timeit(number=1000), "milliseconds")
    t4 = Timer("test4()", "from __main__ import test4")
    print("list range ",t4.timeit(number=1000), "milliseconds")
    
运行结果:

>>> 
 RESTART: D:\Program Files\Python\test\algorithms\data structure and problem solving by python\2-List.py 
concat  1.5390356234120435 milliseconds
append  0.16744655181905288 milliseconds
comprehension  0.04742712544752048 milliseconds
list range  0.022613714719721845 milliseconds
>>> 


pop_zero = Timer("x.pop(0)","from __main__ import x")
    pop_end = Timer("x.pop()","from __main__ import x")
    x = list(range(2000000))
    print(pop_zero.timeit(number=1000))
    x = list(range(2000000))
    print(pop_end.timeit(number=1000))
1.5236582787413726
0.00023699800044640895



2.Dictionaries



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值