Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python定时执行函数_python定时执行详解「建议收藏」

python定时执行函数_python定时执行详解「建议收藏」

作者头像
全栈程序员站长
发布于 2022-09-30 03:06:13
发布于 2022-09-30 03:06:13
2.5K0
举报

大家好,又见面了,我是你们的朋友全栈君。

知识点

1. sched模块,准确的说,它是一个调度(延时处理机制),每次想要定时执行某任务都必须写入一个调度。

(1)生成调度器:

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

第一个参数是一个可以返回时间戳的函数,第二个参数可以在定时未到达之前阻塞。可以说sched模块设计者是“在下很大的一盘棋”,比如第一个函数可以是自定义的一个函数,不一定是时间戳,第二个也可以是阻塞socket等。

(2)加入调度事件

其实有enter、enterabs等等,我们以enter为例子。

s.enter(x1,x2,x3,x4)

四个参数分别为:间隔事件、优先级(用于同时间到达的两个事件同时执行时定序)、被调用触发的函数,给他的参数(注意:一定要以tuple给如,如果只有一个参数就(xx,))

(3)运行

s.run()

注意sched模块不是循环的,一次调度被执行后就Over了,如果想再执行,请再次enter

2. time模块,它是python自带的模块,主要用于时间的格式转换和处理。

time.sleep(s)

推迟调用线程的运行,s指秒数

3. os模块也是python自带的模块,os模块中的system()函数可以方便地运行其他程序或者脚本。

os.system(cmd)

cmd 为要执行的命令,近似于Windows下cmd窗口中输入的命令。

下面我们来看具体实例:

1.定时任务代码

#定时执行任务命令

importtime,os,sched

schedule=sched.scheduler(time.time,time.sleep)defperform_command(cmd,inc):

os.system(cmd)print(‘task’)def timming_exe(cmd,inc=60):

schedule.enter(inc,0,perform_command,(cmd,inc))

schedule.run()print(‘show time after 2 seconds:’)

timming_exe(‘echo %time%’,2)

2.周期性执行任务

importtime,os,sched

schedule=sched.scheduler(time.time,time.sleep)defperform_command(cmd,inc):#在inc秒后再次运行自己,即周期运行

schedule.enter(inc, 0, perform_command, (cmd, inc))

os.system(cmd)def timming_exe(cmd,inc=60):

schedule.enter(inc,0,perform_command,(cmd,inc))

schedule.run()#持续运行,直到计划时间队列变成空为止

print(‘show time after 2 seconds:’)

timming_exe(‘echo %time%’,2)

3.循环执行命令

importtime,osdef re_exe(cmd,inc = 60):whileTrue:

os.system(cmd)

time.sleep(inc)

re_exe(“echo %time%”,5)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/194263.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月13日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python3优雅操作-时间处理与定时任务
无论哪种编程语言,时间肯定都是非常重要的部分,今天来看一下python如何来处理时间和python定时任务
一墨编程学习
2018/12/24
8040
Python利用多线程定时执行cmd命令关机
利用os模块可以执行cmd命令,利用这一点可以实现定时关机,然而在等待关机的过程中也不能啥都不干,于是多线程派上了用场。
艳艳代码杂货店
2021/11/01
1.2K0
Python基础学习_07_实现定时任务
【说明】 time.sleep(seconds)方法在主线程中使用,会阻塞主线程,在time.sleep()的过程中,当前线程也是阻塞的,若要实现计时功能不影响主线程的task,可以通过一个子线程计时,达到间隔时间之后与主线程通信,那样就比较麻烦了,实现下面的方法,也可以实现。
码农帮派
2020/04/01
3140
Python基础学习_07_实现定时任务
Python标准库笔记(5) — sched模块
目录[-] 事件调度 sched模块内容很简单,只定义了一个类。它用来最为一个通用的事件调度模块。 class sched.scheduler(timefunc, delayfunc)这个类定义了调度事件的通用接口,它需要外部传入两个参数,timefunc是一个没有参数的返回时间类型数字的函数(常用使用的如time模块里面的time),delayfunc应该是一个需要一个参数来调用、与timefunc的输出兼容、并且作用为延迟多个时间单位的函数(常用的如time模块的sleep)。 下面是一个列子: i
jhao104
2018/03/20
6990
python高级线程编程-定时器和周期任务(二)
Python标准库中的sched模块提供了一个基于时间的事件调度程序,可以用来实现定时器和周期任务。
玖叁叁
2023/04/20
3260
python每天定时9点执行_python定时执行方法
schedule = sched.scheduler ( time.time, time.sleep )
全栈程序员站长
2022/09/09
2.9K0
Python任务调度之sched
这次我们主要讲解下Python自带模块当中的sched,不但小巧,也很强大,在实际应用中,某些场合还是可以用到的。作为一名Linux的SA,我们已经习惯了用crontab,而sched提供了一种延迟处理机制,也可以理解为任务调度的另一种方式的实现。
py3study
2020/01/07
1.6K0
Python用sched执行周期性任务
#coding=utf-8 import time,sched,os 周期性执行给定的任务 初始化sched模块的scheduler类 第一个参数是一个可以返回时间戳的函数,第二个参数可以在定时未到达之前阻塞。 s = sched.scheduler(time.time,time.sleep) 被周期性调度触发的函数 def event_func(): print "Current Time:",time.time() enter四个参数分别为:间隔事件、优先级(用于同时间到达的两个事件同时执行时定
用户7705674
2021/11/01
3620
Python-延时操作
在日常的开发中,往往会遇到这样的需求,需要某一个函数在一段时间之后才执行以达到某种特定的效果。此时,我们就需要某种机制,使一个函数延后执行。接下来简单介绍一下两种实现此类效果的方法:
py3study
2020/01/08
1.4K0
Python定时任务(上)
在项目中,我们可能遇到有定时任务的需求。其一:定时执行任务。例如每天早上 8 点定时推送早报。其二:每隔一个时间段就执行任务。比如:每隔一个小时提醒自己起来走动走动,避免长时间坐着。今天,我跟大家分享下 Python 定时任务的实现方法。
猴哥yuri
2018/08/16
1.7K0
Python定时任务实现方式
 最简单的方式,在循环里放入要执行的任务,然后sleep一段时间再执行。缺点是,不容易控制,而且sleep是个阻塞函数
菲宇
2019/06/13
2.1K0
一日一技:Python自带的优先级调度器
Python 自带一个调度器模块 sched,它能为你实现优先级队列/延迟队列和定时队列。
青南
2019/07/23
7670
一日一技:Python自带的优先级调度器
怎么把Python当偷懒神器用?
在日常工作中,我们常常会用到需要周期性执行的任务,一种方式是采用 Linux 系统自带的 crond[1] 结合命令行实现。另外一种方式是直接使用 Python。接下里整理的是常见的 Python 定时任务的实现方式。
程序员皮克
2021/12/17
5700
怎么把Python当偷懒神器用?
Python-定时器使用
通过crontab -e命令,添加定时器任务。定期执行python的脚本。如果-e后面是多条命名,可以用分号”;”进行分割。用分号 (;) 所分割的话,那么命令会连续的执行下去。如果每个命令被 && 号分隔,那么这些命令会一直执行下去,如果中间有错误的命令存在,则不再执行后面的命令,没错则执行到完为止。如果每个命令被双竖线(||)分隔符分隔,如果命令遇到可以成功执行的命令,那么命令停止执行,即使后面还有正确的命令则后面的所有命令都将得不到执行。假如命令一开始就执行失败,那么就会执行 || 后的下一个命令,直到遇到有可以成功执行的命令为止,假如所有的都失败,则所有这些失败的命令都会被尝试执行一次。
py3study
2020/01/06
1.2K0
Python爬虫定时计划任务的几种常见方法
记得以前的Windows任务定时是可以正常使用的,今天试了下,发现不能正常使用了,任务计划总是挂起。接下来记录下Python爬虫定时任务的几种解决方法。
Python进阶者
2021/03/11
1.8K0
Python爬虫定时计划任务的几种常见方法
系统设计与分析-技术报告-定时清理验证码的一种解决方案
在系统设计与分析的这门课程中,我们要完成一个项目,是一个大学生通过填写问卷、帮拿快递等方式“挣闲钱”的app。这个App要求实名注册,身份认证的方案如下:以每个学生独有的学校邮箱作为认证注册的凭证,注册之前要先填写邮箱并通过邮箱获取验证码,输入正确验证码才能注册成功。
梦飞
2022/06/23
5240
Python 实现定时任务的八种方案!
来源:https://www.biaodianfu.com/python-schedule.html
Python编程与实战
2021/10/12
34.5K0
Python定时计划任务探究,如何实现到点运行py任务脚本
不少大佬哥应该有着这样一个应用场景,即到点跪舔女神,给女大佬问好,带早餐,备胎计划??而在实际网络中,也有着不少定时定点计划任务需要运行,这在运维当中非常常见,也非常重要!身为技术渣想要实现到点运行py任务脚本,比如说每天某个时间点准时运行爬取91新片以及精彩评论,兴趣让渣渣有研究的动力,这就有了下面这篇水文!!
二爷
2021/10/11
2.1K0
Python 定时任务的实现方式
目前所在的项目组需要经常执行一些定时任务,之前都是用 Node.JS 的 cron来实现 schedule job。可是这次需要连接不同的 DB,而且实现的逻辑也有些许不同,于是选择使用 Python 的定时器。
李振
2021/11/26
1.6K0
Python 定时任务的实现方式
简单定时和请求 schedrequests
通过 scheduler 类来调度事件,从而达到定时执行任务的效果。使用标准库中sched模块非常简单。
vanguard
2020/06/09
1.3K0
相关推荐
Python3优雅操作-时间处理与定时任务
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档