sleep时间问题误差太大

import time for i in range(100): t1 = time.time() time.sleep(0.01) print(time.time() - t1) 以上代码是让程序睡眠10ms,我在自己本地运行和网络在线版python运行相比,时间总是网络版本正确,大约是0.0101这种,但本地运行就会变成0.015之类的,明显误差变大,请问有大佬知道这是为啥嘛,感激不尽

import time

while True:
    st = time.time()
    time.sleep(0.001)
    et = time.time()
    print('dt={dt}'.format(dt=et - st))
返回结果:

dt=0.001966238021850586
dt=0.001010894775390625
dt=0.0020058155059814453
dt=0.0010018348693847656
dt=0.001966238021850586
dt=0.0020215511322021484
dt=0.0019714832305908203
dt=0.0010178089141845703
dt=0.0019807815551757812
dt=0.0010159015655517578
dt=0.001965761184692383

这与操作系统有关

sleep本身就与系统、运行环境有关,有时候遇上程序卡死堵塞 还会变的更长。如果精度要求高的场景,不建议使用sleep来计时

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632