Другие объяснили, почему вы можете спать меньше, чем просили, но не показали, как с этим справиться. Если вам нужно убедиться, что вы спите не менее n секунд, вы можете использовать такой код:
from time import time, sleep
def trusty_sleep(n):
start = time()
while (time() - start < n):
sleep(n - (time() - start))
Это может спать больше n, но никогда не вернется, пока не уснет хотя бы n секунд.