ここでは、現在時刻を出力する print_datetime 関数を開発し、実行し続ける必要があるタスクとして print_time 関数も使用します。
# Importing the datetime module. import datetime def print_time(message=None): """ It prints the current time, optionally preceded by a message. :param message: The message to print """ print(message, datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
次に、使用するスケジュールされたタスク モジュール apscheduler を用意します。インストールには pip メソッドを選択できます。これは私がいつも使用している方法です。
pip install apscheduler # Importing the BlockingScheduler class from the apscheduler.schedulers.blocking module. from apscheduler.schedulers.blocking import BlockingScheduler
この時点で、実行状態を維持する必要があるビジネス関数、つまりここでは print_datetime 関数をスケジュールされたタスクとして実行できます。
この方法では、タスクを実行状態に維持するために while True 無限ループ スリープ メソッドを使用する必要はありません。
# Creating a scheduler object. scheduler = BlockingScheduler() # Adding a job to the scheduler. scheduler.add_job(func=print_time, args=('时间打印定时任务',), trigger='cron', second='*/1') # 每秒执行 # Starting the scheduler in a separate thread. scheduler.start()
最後に、現在の .py ファイルを起動して、スケジュールされたタスクを直接実行します。実行時の効果は次のとおりです。
スケジュールされたタスクの印刷時間 2023-02-26 13:52:52
スケジュールされたタスクの印刷時間 2023-02-26 13:52:53
スケジュールされたタスク 2023-02 の印刷時間-26 13:52:54
スケジュールされたタスクの印刷時間 2023-02-26 13:52:55
スケジュールされたタスクの印刷時間 2023-02-26 13:52:56
スケジュールされたタスク 2023 の印刷時間- 02-26 13:52:57
もちろん、スケジュールされたタスクのフレームワーク アプスケジューラとして、彼は多くのスキルも持っています。例: より複雑なサイクルでの実行、限られた時間内での実行、シングルポイント実行など。
以下は、参考と貴重な意見のためにリストした、より一般的な apscheduler スケジュールされたタスクの実行方法です。
rree以上がPythonタイマーの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。