如何在条件为真时自动运行脚本?

时间:2017-01-21 16:48:54

标签: python scripting autorun

我们说我有以下python程序:

def Is_it_Midnight(args):
    print("It's midnight!")

我希望.py脚本在某个条件为真时自己执行,比如说#34;当时钟到达午夜时#34;。

这可能吗?

2 个答案:

答案 0 :(得分:0)

您可以使用线程库让例程定期重启。在这种特定情况下,每86400秒(1天)。

将您的代码修改为:

import threading
import time

def Is_it_Midnight(args):
    threading.Timer(86400, Is_it_Midnight).start()
    print("It's midnight!")

然后你必须让代码在第一次午夜运行。类似的东西:

seconds = time.time()
since_midnight = seconds % 86400
time.sleep(86400-since_midnight)
Is_it_Midnight()

我不确定你是如何处理传递参数的。

答案 1 :(得分:0)

运行脚本有几个选项。

我最喜欢的是创建myscript.py并在其中定义一个函数,让我们说def alarm()...,然后在您的主脚本中:

import myscript

到时候,请致电:

myscript.alar()

还有另外一种方法,你可以拨打execfile("myscript.py")