如何让python程序每个一段时间执行一次
发布网友
发布时间:2022-04-20 16:59
我来回答
共3个回答
懂视网
时间:2022-05-11 00:35
本文实例讲述了Python函数的周期性执行实现方法。分享给大家供大家参考,具体如下:
需要用到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四个参数分别为:间隔事件、优先级(用于同时间到达的两个事件同时执行时定序)、被调用触发的函数,给他的参数(注意:一定要以tuple给如,如果只有一个参数就(xx,))
def perform(inc):
s.enter(inc,0,perform,(inc,))
event_func()
def mymain(inc=60):
s.enter(0,0,perform,(inc,))
s.run()
# if __name__ == "__main__":
# mymain()
更多Python函数的周期性执行方法相关文章请关注PHP中文网!
热心网友
时间:2022-05-10 21:43
python定时程序(每隔一段时间执行指定函数)
[python] view plain copy
import os
import time
def print_ts(message):
print "[%s] %s"%(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), message)
def run(interval, command):
print_ts("-"*100)
print_ts("Command %s"%command)
print_ts("Starting every %s seconds."%interval)
print_ts("-"*100)
while True:
try:
# sleep for the remaining seconds of interval
time_remaining = interval-time.time()%interval
print_ts("Sleeping until %s (%s seconds)..."%((time.ctime(time.time()+time_remaining)), time_remaining))
time.sleep(time_remaining)
print_ts("Starting command.")
# execute the command
status = os.system(command)
print_ts("-"*100)
print_ts("Command status = %s."%status)
except Exception, e:
print e
if __name__=="__main__":
interval = 5
command = r"ls"
run(interval, command)
热心网友
时间:2022-05-10 23:01
写个shell按照时间启动