solarLan 2019-06-26
在用python进行计时时,遇到了一个精度问题。
环境为win10+python3,使用的计时函数是time.time()函数,经测试发现这种方法的精度在15毫秒左右。
例如如下代码:
l = [] for i in range(100): t1 = time.time() for j in range(1000*100): a = 1 + 2 t2 = time.time() l.append(t2-t1)
执行之后的时间如下图:
可以看到,用这种方法计时的精度大概是15毫秒。
查阅资料可知,这是由于windows系统函数的精度问题。
比如GetTickCount64函数,精度就与系统的timer精度有关,一般在10毫秒到16毫秒之间。
参考资料:
GetTickCount64