在项目中,我们可能遇到有定时任务的需求。其一:定时执行任务。例如每天早上 8 点定时推送早报。其二:每隔一个时间段就执行任务。比如:每隔一个小时提醒自己起来走动走动,避免长时间坐着。今天,我跟大家分享下 Python 定时任务的实现方法。
1
第一种办法是最简单又最暴力。那就是在一个死循环中,使用线程睡眠函数 sleep()。
from datetime import datetime
import time
'''
每个 10 秒打印当前时间。
'''
def timedTask():
while True:
print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
time.sleep(10)
if __name__ == '__main__':
timedTask()
这种方法能够执行固定间隔时间的任务。如果 timedTask() 函数之后还有些操作,我们还使用死循环 + 阻塞线程。这会使得 timedTask() 一直占有 CPU 资源,导致后续操作无法执行。我建议谨重使用。
2
既然第一种方法暴力,那么有没有比较