[英]How to auto-run a script when a condition is true?
假設我有以下python程序:
def Is_it_Midnight(args):
print("It's midnight!")
我希望.py腳本能夠在某個特定條件為真時自行執行,例如說“當時鍾敲響午夜時分”。
那可能嗎?
您可以使用線程庫使例程定期重新啟動。 在這種情況下,每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()
我不確定如何處理將args傳遞到例程中。
有一些選項可以運行腳本。
我最喜歡的是創建myscript.py
並在其中定義一個函數,例如def alarm()...
然后在您的主腳本中:
import myscript
時間到了,請致電:
myscript.alar()
還有另一種方法,您可以調用execfile("myscript.py")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.