Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menjadualkan Fungsi Berulang dalam Python dengan Cekap?
Menjadualkan Fungsi Berulang dalam Python
Dalam Python, anda mungkin mahu melaksanakan fungsi berulang kali pada selang waktu tertentu. Ini boleh dicapai menggunakan pelbagai pendekatan.
Satu kaedah mudah ialah menggunakan gelung sementara dengan masa.sleep() untuk menjeda pelaksanaan sebelum menjalankan semula fungsi. Walau bagaimanapun, pendekatan ini tidak diutamakan kerana ia tidak memanfaatkan gelung peristiwa Python dengan cekap.
Menggunakan Modul jadual
Penyelesaian yang lebih berkesan ialah menggunakan modul jadual, yang menyediakan penjadual acara tujuan umum. Ia membolehkan anda menjadualkan tugasan untuk dijalankan pada masa hadapan.
Kod berikut menunjukkan cara menggunakan modul jadual:
import sched, time def do_something(scheduler): # schedule the next call first scheduler.enter(60, 1, do_something, (scheduler,)) print("Doing stuff...") my_scheduler = sched.scheduler(time.time, time.sleep) my_scheduler.enter(60, 1, do_something, (my_scheduler,)) my_scheduler.run()
Kod ini mencipta penjadual, menjadualkan fungsi do_something to be dilaksanakan dalam 60 saat, dan berulang kali melaksanakannya selepas itu.
Menggunakan Gelung Acara Perpustakaan
Jika aplikasi anda sudah menggunakan perpustakaan gelung acara seperti asyncio, trio atau tkinter, anda boleh menjadualkan tugas menggunakan kaedahnya. Sebagai contoh, dalam asyncio, anda boleh menggunakan kaedah create_task() untuk menjadualkan fungsi untuk dijalankan dalam gelung acara.
Dengan memanfaatkan gelung acara, anda memastikan program anda kekal responsif semasa tugas yang dijadualkan sedang dilaksanakan. Pendekatan ini lebih cekap dan disyorkan untuk kebanyakan aplikasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjadualkan Fungsi Berulang dalam Python dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!