02_python内置模块_timeit

timeit模块可以用来测试一小段python代码的执行速度。

(1)timeit.Timer(stmt='pass', setup='pass', timer=<timer function>)

Timer是测量小段代码执行速度的类。

stmt参数是要测试的代码语句(statement);

setup参数是运行代码时需要的设置;

timer参数是一个定时器函数,与平台无关。

注意:

<1>stmt 参数是字符串形式,如:‘test()1’

<2>setup参数,如果需要导入当前py文件的元素 如:‘from __main__ import test1’

(2)timeit.Timer.timeit(number=1000000)

Timer类中测试语句执行速度的对象方法。

number参数是测试代码的测试次数,默认是1000000次。

方法返回执行代码的平均耗时,一个float类型的秒数。

 

下面测试列表生成的两种方式执行代码的速度:

(1) li = li + [i]

(2) li += [i]

 1 from timeit import Timer
 2 
 3 
 4 def test1():
 5     li = []
 6     for i in range(0, 1000):
 7         li = li + [i]
 8 
 9 
10 def test2():
11     li = []
12     for i in range(1000):
13         li += [i]
14 
15 
16 time1 = Timer('test1()',  'from __main__ import test1')
17 time2 = Timer('test2()',  'from __main__ import test2')
18 
19 
20 print('test1:', time1.timeit(1000))
21 print('test2:', time2.timeit(1000))

运行结果:

test1: 1.861776927585273
test2: 0.09032533791547825

posted on 2019-03-18 20:32  Summer儿  阅读(207)  评论(0编辑  收藏  举报

导航