您的位置:首页 > 编程语言 > Python开发

python 计时工具:timeit

2015-08-06 10:43 681 查看
官方文档:https://docs.python.org/2/library/timeit.html?highlight=timeit.timer#timeit.Timer.timeit

该timeit模块有3函数1类:
timeit.timeit(stmt='pass', setup='pass', timer=<default timer>, number=1000000)

timeit.repeat(stmt='pass', setup='pass', timer=<default timer>, repeat=3, number=1000000)

timeit.default_timer()

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

个人偏向于使用类:
class timeit.Timer(stmt='pass', setup='pass', timer=<timer function>)

这个类也有三个函数:

timeit(number=1000000)                           #执行语句,return所需时间 

repeat(repeat=3, number=1000000)         #timeit()执行1000000次语句,整个大过程来3次,return一个list的执行时间

print_exc(file=None)                                   #出错时打印出traceback

类初始化参数说明:
第一个参数是你要计时的语句或者函数。 

第二个参数是为第一个参数语句构建环境的导入语句。

第三个参数是一个定时器【然而定时器本人还没涉及到,此处挖坑,待补】。

[A.py]
class A:
def f(self):
pass

[test.py]

import timeit

test_str = """
a = A()
for i in range(10000000):
a.f()
"""

t = timeit.Timer(test_str, "from A import A")
print min(t.repeat(3, 1))


结果:

>>> 

1.90454491448
>>> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python