我希望每分钟0 second,30second
启用我的功能触发器。
而不是使用time.sleep(30)
,因为脚本将运行数月并且有一些阻塞系统调用,
我希望在12:00:00, 12:00:30, 12:01:00
我怎么能在Python 2.7上做到这一点
答案 0 :(得分:0)
不确定你的函数是如何工作的,但是如果有任何类型的循环你可以使用if语句。
t = time.time()
while/for loop:
...
if time.time() > t + 30:
yourFunction()
t = time.time()
...
编辑:
我的错,误读了。类似的方法但你可以使用日期时间,但最好不要查看chrontab。这个方法有点hacky,如果你的脚本很小并且可以每秒循环一次,那么这将是有效的,否则就去chrontab。
import datetime
t = datetime.datetime
run = True
while/for loop:
...
if t.now().second % 30 == 0 and run == True:
yourFunction()
run = False
if t.now().second % 30 == 1:
run = True
...