我正在尝试设置一个自动执行的 python 代码。
我从一小段要执行的代码开始:
import datetime
with open("out.txt","a") as f:
f.write(datetime.datetime.now().isoformat())
任务将正常启动并执行(文件已修改),但它永远不会在任务调度程序中结束。
this 和 this 存在于 SO 中,但没有真正的答案。这些线程中提出的唯一解决方法是在 Windows 中的给定时间后强制结束任务,但这需要知道 python 脚本将花费多长时间,而我的实际任务并非如此。
任务调度程序如何知道 python 脚本已完成?
我在任务调度程序中按以下方式运行它:
程序:cmd
参数:/c C:\python27\python.exe C:\path\of\script.py
执行在:C:\path\of\
我尝试了一些变体,比如执行 python 而不是 cmd,但它没有改变任何东西。我曾希望/c 会强制关闭任务。
最佳答案
正如 Gaurav Pundir 提到的,添加 sys.exit(0)
应该正确结束脚本,从而结束任务。但是,您需要使用 import sys
添加 sys 库才能使用 sys.exit(0)
。希望这对您有所帮助!
关于Python 脚本永远不会在任务计划程序中结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35554531/