Maison > développement back-end > Tutoriel Python > Comment puis-je exécuter périodiquement une fonction Python ?

Comment puis-je exécuter périodiquement une fonction Python ?

Patricia Arquette
Libérer: 2024-12-23 18:07:14
original
413 Les gens l'ont consulté

How Can I Execute a Python Function Periodically?

Exécuter périodiquement une fonction en Python

Lorsqu'ils sont chargés d'exécuter une fonction de manière répétée à intervalles fixes, les développeurs recherchent souvent une méthode fiable similaire à Objective NSTimer de C ou setTimeout de JavaScript. Dans ce contexte, une solution qui ressemble à un script cron indépendant de l'utilisateur apparaît comme une option intéressante.

Pour y parvenir en Python, on pourrait envisager l'approche suivante :

while True:
    # Code executed here
    time.sleep(60)
Copier après la connexion

Cependant, ce code peut présenter des problèmes imprévus. Pour les contourner, pensez à utiliser le module sched, un planificateur d'événements à usage général. L'exemple suivant démontre son utilisation :

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()
Copier après la connexion

Alternativement, si votre application utilise une bibliothèque de boucles d'événements comme asyncio, trio, tkinter ou autres, vous pouvez directement planifier des tâches à l'aide des méthodes fournies.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal