我运行的程序有很多计算需要花费大量时间进行输出。我认为如果我可以在收到输出后关闭电脑,这可能是一个好主意。所以我使用了下面的代码(顺便说一句,它工作正常):
def shutdown():
import os
os.system("shutdown /s /t 90")
if __name__ == "__main__":
main()
shutdown()
但是现在我有另一个同时运行的程序(IDM)从早上2点到早上7点运行
我的问题是,我怎样才能设计一个简单的程序,只有在PC时间超过上午7点时关闭PC。
任何人都可以帮我吗?
答案 0 :(得分: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")
代替。