Heim > Artikel > Backend-Entwicklung > So verzögern Sie manuell in Python
Ich möchte wissen, wie man einem Python-Skript eine Zeitverzögerung hinzufügt.
import time time.sleep(5) # Delays for 5 seconds. You can also use a float value.
Hier ist ein weiteres Beispiel, das ungefähr jede Minute läuft:
import timewhile True: print("This prints once a minute.") time.sleep(60) # Delay for 1 minute (60 seconds).
Sie können die Funktion „sleep()“ im Zeitmodul verwenden. Es kann Gleitparameter für eine Auflösung von weniger als einer Sekunde übernehmen.
from time import sleep sleep(0.1) # Time in seconds.
Wie kann man in Python manuell verzögern?
In einem Thread empfehle ich die Schlaffunktion:
>>> from time import sleep >>> sleep(4)
Dadurch wird die Verarbeitung des Threads, auf dem das Betriebssystem ihn aufruft, tatsächlich angehalten, sodass andere Threads und Prozesse im Ruhezustand ausgeführt werden können.
Verwenden Sie es für diesen Zweck oder einfach, um die Ausführung einer Funktion zu verzögern. Zum Beispiel:
>>> def party_time(): ... print('hooray!') ... >>> sleep(3); party_time() hooray!
Ausdruck nach 3 Sekunden Enter.
Beispiel für die Verwendung von Sleep mit mehreren Threads und Prozessen
Auch hier pausiert Sleep Ihre Threads – es verbraucht keine Rechenleistung.
Erstellen Sie zur Demonstration ein Skript wie dieses (ich habe es zuerst in einer interaktiven Python 3.5-Shell versucht, aber der Unterprozess party_later konnte die Funktion aus irgendeinem Grund nicht finden):
from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutor, as_completed from time import sleep, time def party_later(kind='', n=''): sleep(3) return kind + n + ' party time!: ' + __name__ def main(): with ProcessPoolExecutor() as proc_executor: with ThreadPoolExecutor() as thread_executor: start_time = time() proc_future1 = proc_executor.submit(party_later, kind='proc', n='1') proc_future2 = proc_executor.submit(party_later, kind='proc', n='2') thread_future1 = thread_executor.submit(party_later, kind='thread', n='1') thread_future2 = thread_executor.submit(party_later, kind='thread', n='2') for f in as_completed([ proc_future1, proc_future2, thread_future1, thread_future2,]): print(f.result()) end_time = time() print('total time to execute four 3-sec functions:', end_time - start_time) if __name__ == '__main__': main()
Beispielausgabe aus diesem Skript:
thread1 party time!: __main__ thread2 party time!: __main__ proc1 party time!: __mp_main__ proc2 party time!: __mp_main__ total time to execute four 3-sec functions: 3.4519670009613037
Das obige ist der detaillierte Inhalt vonSo verzögern Sie manuell in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!