time.time()
在 Linux 上似乎可以us = 1/1000 ms
精确地产生当前时间。
我可以用它来ms
精确地分析函数吗,通过这样做:
func_start = time.time() * 1000
#run something inbetween
print 'Function finishes in: %.3f ms' % ((time.time() * 1000) - func_start)
不,您不会以这种方式提高精度。你也可以这样做:
func_start = time.time()
print 'Function finishes in: %.3f ms' % ((time.time() - func_start) * 1000)
但是要准确衡量一个函数的性能,你真的需要重新运行它几次,以消除操作系统调度、同时发生磁盘刷新中断等的影响。
对于您的平台允许的准确计时方法,请使用timeit
模块,或至少重新使用它的default_timer()
功能。