2017-05-19 30 views
1

我運行一個程序,它有很多計算需要花費很多時間輸出。我認爲如果在收到輸出後可以關閉PC,這可能是個好主意。所以我用下面的代碼(其中的方式正常工作):如何安排我的電腦在某個特定時間關機?

def shutdown(): 
    import os 
    os.system("shutdown /s /t 90") 

if __name__ == "__main__": 
    main() 
    shutdown() 

但現在我同時運行其他程序(IDM),從凌晨2點一直工作到7點。
我的問題是,我如何設計一個簡單的程序,只有在PC時間超過7點時才關閉PC。
任何人都可以幫助我嗎?

回答

2

您可以查看當前的時間和環路,直到它關閉之前所經過的指定時間,例如:

import os 
import time 

def shutdown(threshold=7): 
    while time.gmtime().tm_hour < threshold: 
     time.sleep(300) # wait 5 minutes 
    os.system("shutdown /s /t 90") 

,並把它作爲你現在叫它。

該閾值設置小時後繼續關機,默認設置爲7.請記住,它使用您的系統時鐘(最可能是UTC),因此您必須考慮時差指定您的閾值。

當然,如果你不想關閉系統可言,甚至當時間的推移,如果腳本是門檻之前調用,您可以使用:

def shutdown(threshold=7): 
    if time.gmtime().tm_hour >= threshold: 
     os.system("shutdown /s /t 90") 

代替。

相關問題