python定时任务 sched模块用法实例


Posted in Python onNovember 04, 2019

这篇文章主要介绍了python定时任务 sched模块用法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数。

schedule = sched.scheduler( time.time,time.sleep)

schedule是一个对象,叫什么名字都可以。

schedule.enter(delay,priority,action,arguments)

delay:第一个参数是一个整数或浮点数,代表多少秒后执行这个action任务

priority:第二个参数是优先级,0代表优先级最高,1次之,2次次之,当两个任务是预定在同一个时刻执行时,根据优先级决定谁先执行。

action:第三个参数就是你要执行的任务,可以简单理解成你要执行任务的函数的函数名

arguments:第四个参数是你要传入这个定时执行函数名函数的参数,最好用括号包起来,如果只传入一个参数的时候用括号包起来,该参数后面一定要加一个逗号,如果不打逗号,会出现错误。

例如schedule.enter(delay, priority, action, (argument1,))

run()一直被阻塞,直到所有任务全部执行结束。每个任务在同一线程中运行,所以如果一个任务执行时间大于
其他任务的等待时间,那么其他任务会推迟任务的执行时间,这样保证没有任务丢失,但这些任务的调用时间会比设定的推迟。

代码实例

import time
import sched
import datetime
schedule = sched.scheduler( time.time,time.sleep)
def event_fun1():
  print("func1 Time:", datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
def event_fun2():
  print("func2 Time:", datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
def event_fun3():
  print("func3 Time:", datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))

def func1(sec):
  schedule.enter(sec,0,func1,(sec,))
  event_fun1()
def func2(sec):
  schedule.enter(sec, 0, func2, (sec,))
  event_fun2()
def func3(sec):
  schedule.enter(sec, 0, func3, (sec,))
  event_fun3()

print ("start")
while True:
  nt = datetime.datetime.now()
  if nt.second == 0:
    break
  time.sleep(1)

schedule.enter(10,0,func1,(10,))
schedule.enter(30,0,func2,(30,))
schedule.enter(60,0,func3,(60,))
schedule.run()
print("end")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python使用scrapy抓取网站sitemap信息的方法
Apr 08 Python
python对html代码进行escape编码的方法
May 04 Python
Python调用C# Com dll组件实战教程
Oct 12 Python
windows环境下tensorflow安装过程详解
Mar 30 Python
详谈Numpy中数组重塑、合并与拆分方法
Apr 17 Python
儿童学习python的一些小技巧
May 27 Python
在notepad++中实现直接运行python代码
Dec 18 Python
tensorflow的计算图总结
Jan 12 Python
Python with语句用法原理详解
Jul 03 Python
浅析PyCharm 的初始设置(知道)
Oct 12 Python
class类在python中获取金融数据的实例方法
Dec 10 Python
Python 正则模块详情
Nov 02 Python
python框架flask表单实现详解
Nov 04 #Python
pycharm显示远程图片的实现
Nov 04 #Python
使用PyCharm进行远程开发和调试的实现
Nov 04 #Python
python框架django项目部署相关知识详解
Nov 04 #Python
python tkinter控件布局项目实例
Nov 04 #Python
python requests抓取one推送文字和图片代码实例
Nov 04 #Python
python 五子棋如何获得鼠标点击坐标
Nov 04 #Python
You might like
PHP数组交集的优化代码分析
2011/03/06 PHP
PHP中使用CURL伪造来路抓取页面或文件
2011/05/04 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
php  单例模式详细介绍及实现源码
2016/11/05 PHP
PHP中使用mpdf 导出PDF文件的实现方法
2018/10/22 PHP
jquery 必填项判断表单是否为空的方法
2008/09/14 Javascript
javascript多种数据类型表格排序代码分析
2010/09/11 Javascript
javascript学习(二)javascript常见问题总结
2013/01/02 Javascript
jQuery插件开发详细教程
2014/06/06 Javascript
js中setTimeout()与clearTimeout()用法实例浅析
2015/05/12 Javascript
浅谈jQuery中height与width
2015/07/06 Javascript
js下将金额数字每三位一逗号分隔
2016/02/19 Javascript
JS如何判断浏览器类型和详细区分IE各版本浏览器
2017/03/04 Javascript
@ResponseBody 和 @RequestBody 注解的区别
2017/03/08 Javascript
nodejs 搭建简易服务器的图文教程(推荐)
2017/07/18 NodeJs
JavaScript模块模式实例详解
2017/10/25 Javascript
用vue2.0实现点击选中active其他选项互斥的效果
2018/04/12 Javascript
Vue两种组件类型:递归组件和动态组件的用法
2020/08/06 Javascript
夯基础之手撕javascript继承详解
2020/11/09 Javascript
Windows下Python使用Pandas模块操作Excel文件的教程
2016/05/31 Python
python实现外卖信息管理系统
2018/01/11 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
2018/04/18 Python
Python中使用logging和traceback模块记录日志和跟踪异常
2019/04/09 Python
对Python强大的可变参数传递机制详解
2019/06/13 Python
Python pip 安装与使用(安装、更新、删除)
2019/10/06 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
pip install 使用国内镜像的方法示例
2020/04/03 Python
HTML5 语义化结构化规范化
2008/10/17 HTML / CSS
阿联酋团购网站:Groupon阿联酋
2016/10/14 全球购物
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
Myprotein瑞士官方网站:运动营养和健身网上商店
2019/09/25 全球购物
.NET初级开发工程师面试题(包括Javascript)
2012/08/22 面试题
成绩单家长评语大全
2014/04/16 职场文书
网站创业计划书
2014/04/30 职场文书
先进个人事迹材料(2016推荐版)
2016/03/01 职场文书
vue ref如何获取子组件属性值
2022/03/31 Vue.js