python进行毫秒级计时时遇到的一个精度问题

在用python进行计时时,遇到了一个精度问题。
环境为win10+python3,使用的计时函数是time.time()函数,经测试发现这种方法的精度在15毫秒左右。
例如以下代码:python

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)

执行以后的时间以下图:
运行时间windows

能够看到,用这种方法计时的精度大概是15毫秒。
查阅资料可知,这是因为windows系统函数的精度问题。
好比GetTickCount64函数,精度就与系统的timer精度有关,通常在10毫秒到16毫秒之间。app

参考资料:
GetTickCount64函数

相关文章
相关标签/搜索