Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Melaksanakan Fungsi Python Secara Berkala?

Bagaimanakah Saya Boleh Melaksanakan Fungsi Python Secara Berkala?

Patricia Arquette
Lepaskan: 2024-12-23 18:07:14
asal
452 orang telah melayarinya

How Can I Execute a Python Function Periodically?

Melaksanakan Fungsi Secara Berkala dalam Python

Apabila ditugaskan untuk melaksanakan fungsi berulang kali pada selang masa tetap, pembangun sering mencari kaedah yang boleh dipercayai serupa dengan Objektif NSTimer C atau setTimeout JavaScript. Dalam konteks ini, penyelesaian yang menyerupai skrip cron bebas pengguna muncul sebagai pilihan yang menarik.

Untuk mencapai ini dalam Python, seseorang mungkin mempertimbangkan pendekatan berikut:

while True:
    # Code executed here
    time.sleep(60)
Salin selepas log masuk

Walau bagaimanapun, kod ini mungkin menimbulkan isu yang tidak dijangka. Untuk memintas perkara ini, pertimbangkan untuk menggunakan modul jadual, penjadual acara tujuan umum. Contoh berikut menunjukkan penggunaannya:

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()
Salin selepas log masuk

Sebagai alternatif, jika aplikasi anda menggunakan pustaka gelung peristiwa seperti asyncio, trio, tkinter atau lain-lain, anda boleh menjadualkan tugas secara langsung menggunakan kaedah yang disediakan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Fungsi Python Secara Berkala?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan