代码运算时间测试模块:timeit.Timer
- timeit模块:该模块可以用来测试一段python代码的执行速度/时长。
- Timer类:该类是timeit模块中专门用于测量python代码的执行速度/时长的。原型为:class timeit.Timer(stmt='pass',setup='pass')。
- stmt参数:表示即将进行测试的代码块语句。
- setup:运行代码块语句时所需要的设置。
- timeit函数:timeit.Timer.timeit(number=100000),该函数返回代码块语句执行number次的平均耗时。
1 from timeit import Timer 2 3 4 def func1(): 5 l = [] 6 for i in range(1000): 7 l += [i] 8 9 10 def func2(): 11 l = [] 12 for i in range(1000): 13 l.append(i) 14 15 16 def func3(): 17 l = [i for i in range(1000)] 18 19 20 def func4(): 21 l = list(range(1000)) 22 23 24 if __name__ == '__main__': 25 t1 = Timer("func1()", "from __main__ import func1") # 实例化测试对象 26 print(t1.timeit(1000)) # 测试次数 27 t2 = Timer("func2()", "from __main__ import func2") 28 print(t2.timeit(number=1000)) 29 t3 = Timer("func3()", "from __main__ import func3") 30 print(t3.timeit(1000)) 31 t4 = Timer("func4()", "from __main__ import func4") 32 print(t4.timeit(1000))