Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich eine Python-Funktion regelmäßig ausführen?

Wie kann ich eine Python-Funktion regelmäßig ausführen?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-23 18:07:14423Durchsuche

How Can I Execute a Python Function Periodically?

Regelmäßiges Ausführen einer Funktion in Python

Wenn Entwickler die Aufgabe haben, eine Funktion wiederholt in festen Intervallen auszuführen, suchen Entwickler häufig nach einer zuverlässigen Methode, die Objective ähnelt Cs NSTimer oder JavaScripts setTimeout. In diesem Zusammenhang erweist sich eine Lösung, die einem benutzerunabhängigen Cron-Skript ähnelt, als attraktive Option.

Um dies in Python zu erreichen, könnte man den folgenden Ansatz in Betracht ziehen:

while True:
    # Code executed here
    time.sleep(60)

Allerdings Dieser Code kann unvorhergesehene Probleme verursachen. Um diese zu umgehen, sollten Sie die Verwendung des Moduls „sched“ in Betracht ziehen, einem Allzweck-Ereignisplaner. Das folgende Beispiel demonstriert die Verwendung:

import sched, time

def do_something(scheduler):
    # schedule the next call first
    scheduler.enter(60, 1, do_something, (scheduler,))
    print("Doing stuff...")
    # then do your stuff

my_scheduler = sched.scheduler(time.time, time.sleep)
my_scheduler.enter(60, 1, do_something, (my_scheduler,))
my_scheduler.run()

Wenn Ihre Anwendung alternativ eine Ereignisschleifenbibliothek wie Asyncio, Trio, Tkinter oder andere verwendet, können Sie Aufgaben direkt mithilfe der bereitgestellten Methoden planen.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Python-Funktion regelmäßig ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn