如何在Python中计算程序运行时间?
快速替代方案
import timeit
start = timeit.default_timer()
#Your statements here
stop = timeit.default_timer()
print('Time: ', stop - start)
我不知道这是否是更快的替代方案,但我有另一个解决方案 -
from datetime import datetime
start=datetime.now()
#Statements
print datetime.now()-start
你可能想要看一下 timeit
模块:
http://docs.python.org/library/timeit.html
或者使用profile
模块:
http://docs.python.org/library/profile.html
这里还有一些很好的教程:
http://www.doughellmann.com/PyMOTW/profile/index.html
http://www.doughellmann.com/PyMOTW/timeit/index.html
而且time
模块也可能会有用,尽管我更喜欢后两个建议来测试和分析代码性能:
print timeit.timeit('myOwnFunc()', setup='from __main__ import myOwnFunc', number=1)
。如果没有设置参数,它会抱怨找不到myOwnFunc。 - Landshark666@JoshAdel已经涵盖了很多内容,但是如果你只想计时整个脚本的执行时间,你可以在类Unix系统下使用time
命令运行它。
kotai:~ chmullig$ cat sleep.py
import time
print "presleep"
time.sleep(10)
print "post sleep"
kotai:~ chmullig$ python sleep.py
presleep
post sleep
kotai:~ chmullig$ time python sleep.py
presleep
post sleep
real 0m10.035s
user 0m0.017s
sys 0m0.016s
kotai:~ chmullig$