有时候需要计算一下函数的时间,可以有以下的几种方式:
简单粗暴式
|
|
升级版1
使用装饰器12345678910111213141516import timedef count_running_time(func): def _count_running_time(*args, **kwargs): start = time.time() res = func(*args, **kwargs) print('cost time :{0}'.format(time.time() - start)) return res return _count_running_timedef func(): passif __name__ == '__main__': func()
升级版2
通过上下文管理器
|
|
以上的方式,只能简单统计函数的总运行时间,如果函数复杂,需要分析里边调用的次数和耗时,则满足不了我们的需求。
更精确的统计方式
使用cProfile来进行统计,使用pstats来分析结果,直接看代码吧~
|
|
打印如下:
|
|
函数调用的次数和耗时一目了然~