veröffentlicht am: 31.05.2020 zuletzt aktualisiert am: 02.02.2023
Manchmal müssen wir unsere Skripte für einen gewissen Zeitraum pausieren. Um das zu erreichen, können wir die Python sleep Funktion aus dem timer Modul verwenden.
Mit sleep kannst du dafür sorgen, dass dein Skript für die angegebene Anzahl an Sekunden pausiert wird. Um diese zu verwenden, musst du sie aus dem Modul timer importieren, oder das Modul timer direkt importieren. Im folgenden Beispiel nutze ich noch die Funktion ctime um eine gut lesbare Zeitangabe zu produzieren.
import time print(time.ctime()) time.sleep(3) print(time.ctime())
Sat May 30 20:22:49 2020 Sat May 30 20:22:52 2020
Du kannst die Zeit auch Millisekundengenau übergeben. 100 Millisekunden werden beispielsweise als 0.1 dargestellt.
Falls du mit threading arbeitest, kannst du sleep verwenden, um die Ausführung verschiedener Threads besser zu koordinieren. Wenn du sleep hier anwendest, wird ein anderer Thread ausgeführt. Im folgenden Beispiel werden 2 Threads mit unterschiedlichen Werten für sleep erstellt und gestartet.
import time from threading import Thread class Thread1(Thread): def run(self): for i in range(1, 9): print(i, time.ctime()) time.sleep(1) class Thread2(Thread): def run(self): for i in range(10, 13): print(i, time.ctime()) time.sleep(3) print("Thread1") Thread1().start() print("Thread2") Thread2().start() print("Fertig")
Thread1 Thread2 Fertig 1 Sat May 30 21:45:50 2020 10 Sat May 30 21:45:50 2020 2 Sat May 30 21:45:51 2020 3 Sat May 30 21:45:52 2020 11 Sat May 30 21:45:53 2020 4 Sat May 30 21:45:53 2020 5 Sat May 30 21:45:54 2020 6 Sat May 30 21:45:55 2020 12 Sat May 30 21:45:56 2020 7 Sat May 30 21:45:56 2020 8 Sat May 30 21:45:57 2020
Nachdem Thread1 ausgeführt wurde, wartet dieser für 1 Sekunde auf Thread2. Dieser wiederum gibt nach einer Ausführung die Kontrolle an Thread1 für 3 Sekunden zurück. Dieser Kreislauf wiederholt sich bis zum Ende der Ausführung.
Die Ausführung deines Skriptes mit sleep zu pausieren ist sehr einfach. Weiterhin kannst du mit der Funktion auch die Ausführung deiner Threads genauer beeinflussen.
Wenn du noch Fragen oder Anmerkungen hast, schreibe es mir bitte in die Kommentare.
😩 Gelangweilt von den Udemy & YouTube-Tutorials?!
Lerne spielerisch Python und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.
"Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."
- Lennart Sparbier
100% kostenlos registrieren · keine Kreditkarte notwendig
Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.
100% kostenlos registrieren · keine Zahlungsdaten notwendig