2017-09-13 36 views
0

Im試圖在某個時間執行if語句,但是在那個時候不能執行if語句。當它到達那個時候,我正在運行程序,什麼都沒有發生。想要在特定時間執行if語句

import os 
import datetime 

now = datetime.datetime.now() 

if now.hour == 20 and now.minute == 46: 
    print ("REBOOTING") 
    os.system("shutdown -t 0 -r -f") 
+0

您可能需要使用'while'循環或將重啓僅如果碰巧你打電話該程序只是在正確的時間 – Julien

回答

-2

要做到這一點你的代碼應該是在一個while循環這樣:

import os 
import datetime 
while true 
now = datetime.datetime.now() 

if now.hour == 20 and now.minute == 46: 
    print ("REBOOTING") 
    os.system("shutdown -t 0 -r -f") 
0
import schedule 
import time 
def reboot(): 
    print ("REBOOTING") 
    os.system("shutdown -t 0 -r -f") 
schedule.every().day.at("20:46").do(reboot) 
while True: 
    schedule.run_pending() 
    time.sleep(1) 
+0

看起來像你從[這個答案](https://stackoverflow.com/a/16786600/3496038)複製了大部分你的答案從[作爲可能的重複在評論中鏈接的問題] (https://stackoverflow.com/posts/comments/79338795?noredirect=1)。你沒有事件寫你自己的解釋,或包括一個解釋,就此事。 –

+1

我從一個網站了解到。你可以在這裏找到計劃的信息:https://pypi.python.org/pypi/schedule –