简单的Python调度器Schedule详解

更新时间:2023-07-08 08:36:13 阅读: 评论:0

简单的Python调度器Schedule详解
最近在做项⽬的时候经常会⽤到定时任务,由于我的项⽬是使⽤Java来开发,⽤的是SpringBoot框架,因此要实现这个定时任务其实并不难。
后来我在想如果我要在Python中实现,我要怎么做呢?
⼀开始我⾸先想到的是Timer
Timer
这个是⼀个扩展⾃threading模块来实现的定时任务。它其实是⼀个线程。市场经济地位
# ⾸先定义⼀个需要定时执⾏的⽅法
>>> def hello():
print("hello!")
# 导⼊threading,并创建Timer,设置1秒后执⾏hello⽅法
>>> import threading
小陀螺
>>> timer = threading.Timer(1,hello)
>>> timer.start()
# 1秒后打印
>>> hello!
这个内置的⼯具使⽤起来也简单,对于熟悉Java的同学来说也是⾮常容易的。然⽽我⼀直能否有⼀个更加Pythonic的⼯具或者类库呢?
这时我看到⼀篇⽂章介绍Scheduler类库的使⽤,突然觉得这就是我想要的
Scheduler
要使⽤这个库先使⽤以下命令进⾏安装
pip install schedule
schedule模块中的⽅法可读性⾮常好,⽽且⽀持链式调⽤
import schedule
# 定义需要执⾏的⽅法
def job():
白色怎么读英语print("a simple scheduler in python.")
# 设置调度的参数,这⾥是每2秒执⾏⼀次
schedule.every(2).conds.do(job)
翘臀美胸
if __name__ == '__main__':
while True:
schedule.run_pending()
# 执⾏结果
a simple scheduler in python.
a simple scheduler in python.
a simple scheduler in python.
...
元宵节的简介其它设置调度参数的⽅法
# 每⼩时执⾏
schedule.every().hour.do(job)
# 每天12:25执⾏
schedule.every().day.at("12:25").do(job)
# 每2到5分钟时执⾏
schedule.every(5).to(10).minutes.do(job)
# 每星期4的19:15执⾏
schedule.every().thursday.at("19:15").do(job)
考试作弊检查
# 每第17分钟时就执⾏
schedule.every().minute.at(":17").do(job)
如果要执⾏的⽅法需要参数呢?
# 需要执⾏的⽅法需要传参
def job(val):
print(f'hello {val}')
# schedule.every(2).conds.do(job)蒜苔炒肉怎么炒好吃
# 使⽤带参数的do⽅法
schedule.every(2).conds.do(job, "hylinux")
# 执⾏结果
hello hylinux
hello hylinux
hello hylinux
hello hylinux
hello hylinux
点字繁体hello hylinux
...
是不是很简单?
学习资料
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

本文发布于:2023-07-08 08:36:13,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1085139.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:实现   调度   设置   具使   参数   希望   学习   有所
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图