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

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

我希望每60秒永远用Python反复执行一个函数(就像NSTimer在目标C中)。这段代码将作为守护进程运行,实际上就像每分钟使用cron调用python脚本一样,但不需要用户设置它。

在……里面关于用Python实现的cron的问题,该解决方案似乎有效地睡眠()x秒钟。我不需要这么高级的功能,所以像这样的东西可能会起作用

while True:
    # Code executed here
    time.sleep(60)

此代码是否存在可预见的问题?


Smart猫小萌
浏览 5202回答 4
4回答

一只斗牛犬

使用赛德模块,它实现了一个通用事件调度程序。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()

繁花如伊

把你的时间循环锁在系统时钟上就行了。轻松点。import time starttime=time.time()while True:   print "tick"   time.sleep(60.0 - ((time.time() - starttime) % 60.0))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python