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

python定时执行函数_python定时执行详解「建议收藏」知识点1.sched模块,准确的说,它是一个调度(延时处理机制),每次想要定时执行某任务都必须写入一个调度。(1)生成调度器:s=sched.scheduler(time.time,time.sleep)第一个参数是一个可以返回时间戳的函数,第二个参数可以在定时未到达之前阻塞。可以说sched模块设计者是“在下很大的一盘棋”,比如第一个函数可以是自定义的一个函数,不一定是时间戳,第二个也可以…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

知识点

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.net/194263.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • IO编程

    IO编程是什么?    IO在计算机中指Input/Output,也就是输入和输出。由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘、网络等,就需要IO接口。    比如你打开浏览器,访问新浪首页,浏览器这个程序就需要通过网络IO获取新浪的网页。浏览器首先会发送数据给新浪服务器,告诉它我想要首页的HTML,这个动作是往外发数据,叫O

    2022年4月27日
    54
  • 客户端和服务器不支持一,客户端和服务器不支持常用的 SSL 协议版本或加密套件。导致此问题的原因通常是服务器要求使用 SSLv3…

    客户端和服务器不支持一,客户端和服务器不支持常用的 SSL 协议版本或加密套件。导致此问题的原因通常是服务器要求使用 SSLv3…您的问题是:“客户端和服务器不支持常用的SSL协议版本或加密套件。导致此问题的原因通常是服务器要求使用SSLv3服务器加密别的网站都可以正常打开想打开这样的网站需要怎么设置工具Internet高级安全里面SSL1SSL2点对号也不行原理的少说结果我能打开网站就好”回答:你好,这是chrome内核的浏览器的实验性功能设置不正确导致的。下面附上完美解决方案。请按以下步骤…

    2022年5月5日
    4.3K
  • 备份集中的数据库备份与现有的数据库不同解决方法

    备份集中的数据库备份与现有的数据库不同解决方法以前一直使用SQLServer2000,现在跟潮流都这么紧,而且制定要求使用SQLServer2005,就在现在的项目中使用它了。对于SQLServer2005,有几个地方是要注意的,比方在还原数据库时,不像2000里边将数据库和文件区分的很细,统一均为文件,这就使还原的数据库文件制定为.bak。那么想还原2000的数据库(备份数据库文件,无后缀名的),就需要自己手工选择。…

    2022年5月6日
    444
  • 约瑟夫算法(数学分析法)

    约瑟夫算法(数学分析法)

    2021年12月5日
    44
  • 进程间通信和线程间通信的区别_有些线程包含多个进程

    进程间通信和线程间通信的区别_有些线程包含多个进程进程间通信转自https://www.cnblogs.com/LUO77/p/5816326.html线程间通信https://www.cnblogs.com/jobs1/p/10784021.html线程间通信进程和线程的区别程序只是一组指令的有序集合,它本身没有任何运行的含义,它只是一个静态的实体。而进程则不同,它是程序在某个数据集上的执行。进程是一个动态的实体,它有自己的生命周期。它因创建而产生,因调度而运行,因等待资源或事件而被处于等待状态,因完成任务而被撤消。反映…

    2022年10月7日
    3
  • Shell 脚本:DDNS for aliyun

    Shell 脚本:DDNS for aliyun#!/bin/bashset-e#================================================================================================================##功能:用于更新阿里云域名IP,实现DDNS功能##在http://www.gebi1.com/forum.php?mod=viewthread&tid=287344&page=1&_dsign=8f94f7

    2022年5月29日
    81

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号