python中统计函数运行耗时的方法

本文实例讲述了python中统计函数运行耗时的方法。分享给大家供大家参考。具体实现方法如下:

import time
def time_me(fn):
def _wrapper(*args, **kwargs):
start = time.clock()
fn(*args, **kwargs)
print “%s cost %s second”%(fn.__name__, time.clock() – start)
return _wrapper
#这个装饰器可以在方便地统计函数运行的耗时。
#用来分析脚本的性能是最好不过了。
#这样用:
@time_me
def test(x, y):
time.sleep(0.1)
@time_me
def test2(x):
time.sleep(0.2)
test(1, 2)
test2(2)
#输出:
#test cost 0.1001529524 second
#test2 cost 0.199968431742 second

另一个更高级一点的版本是:

import time
import functools
def time_me(info=”used”):
def _time_me(fn):
@functools.wraps(fn)
def _wrapper(*args, **kwargs):
start = time.clock()
fn(*args, **kwargs)
print “%s %s %s”%(fn.__name__, info, time.clock() – start), “second”
return _wrapper
return _time_me
@time_me()
def test(x, y):
time.sleep(0.1)
@time_me(“cost”)
def test2(x):
time.sleep(0.2)
test(1, 2)
test2(2)

希望本文所述对大家的python程序设计有所帮助。

Posted in 未分类