在Python中每x秒重复执行一个函数的最佳方法是什么?

我想永远每60秒重复执行一次Python中的函数(就像Objective C中的NSTimer一样)。该代码将作为守护程序运行,实际上就像使用cron每分钟调用python脚本一样,但是不需要用户设置。

在有关使用Python实现的cron的问题中,该解决方案似乎实际上只是将sleep()停留了x秒。我不需要这种高级功能,所以也许这样的事情会起作用

while True:

# Code executed here

time.sleep(60)

该代码是否存在任何可预见的问题?

回答:

使用sched模块,该模块实现了通用事件调度程序。

import sched, time

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

def do_something(sc):

print "Doing stuff..."

# do your stuff

s.enter(60, 1, do_something, (sc,))

s.enter(60, 1, do_something, (s,))

s.run()

以上是 在Python中每x秒重复执行一个函数的最佳方法是什么? 的全部内容, 来源链接: utcz.com/qa/428464.html

回到顶部