2016-03-25 10 views
1

So habe ich einen ziemlich seltsamen Fehler bei der Verwendung von time.sleep() in Python.Strange IOError wenn time.sleep() in Python

start = time.time() 
# some code goes here 
end = time.time() 
spent = end - start 
time.sleep(1.0101 - spent) # this gives a strange IOError... 

Kann ich es beheben? Ich kann nicht ausgegeben oder 1.0101 ändern.
EDIT: Der Fehler ist: IOError: [Errno 22] ungültiges Argument.
EDIT2: Ich bin 2.

+1

können Sie bitte Ihre Frage bearbeiten, um den genauen Fehler zu enthalten? –

+0

Was wenn ausgegeben ist größer als 1.0101? –

+1

@JosephFarah Es wird ein bisschen dauern, aber okay – Ace

Antwort

4

In Linux ein Raspberry Pi mit in der Regel Sie IOError erhalten, wenn eine negative Zahl time.sleep vorbei. Manche Systeme können stattdessen für immer schlafen.

Diese issue wurde behoben, indem eine ValueError ausgelöst, wenn ein negativer Wert seit Python 3.3 bereitgestellt wird.

+0

Danke, aber ausgegeben ist NIE größer als 0,0101. Und ich kann nicht Verwenden Sie 0.011, da das Skript langsamer und nicht mehr synchron mit dem anderen Skript ist – Ace

+0

Der Fehler ist ein ungültiger Argumentfehler – Ace

+0

Danke Es war negativ. – Ace