是否有一种简单的方法可以让python代码段每5分钟运行一次?
我知道我可以使用time.sleep()来实现它,但还有其他方法吗?
例如,我想每5分钟运行一次:
x = 0
def run_5():
print "5 minutes later"
global x += 5
print x, "minutes since start"
这只是一个假的例子,但这个想法就在那里。
有什么想法吗?
我在linux上并且很乐意使用cron,但只是想知道是否有python替代品?
答案 0 :(得分:2)
您可以使用线程模块
来完成>>> import threading
>>> END = False
>>> def run(x=0):
... x += 5
... print x
... if not END:
... threading.Timer(1.0, run, [x]).start()
...
>>> threading.Timer(1.0, run, [x]).start()
>>> 5
10
15
20
25
30
35
40
然后,当您希望停止时,请设置END = True
。
答案 1 :(得分:2)
如果您正在运行* nix类型的操作系统,您可能需要查看cron
。您可以轻松地让它每5分钟运行一次程序
答案 2 :(得分:0)
如果您使用的是Windows平台,则可以使用计划任务。
否则,请使用cron,精彩,精彩的cron。