簡體   English   中英

如何使用子功能重新啟動Python腳本

[英]How to restart Python script with subfunctions

我有一個龐大的Python腳本,當它崩潰時需要自動重新啟動。 當我嘗試通過將腳本包裝到函數中然后通過while True調用它的標准方法while True ,出現以下錯誤:

SyntaxError: unqualified exec is not allowed in function 'wrappedFunc' because it contains a nested function with free variables

據我了解,這是由於我的主腳本具有子功能。 我是否仍可以通過Python進行操作,還是應該在Windows中通過批處理文件完成操作?

該錯誤與在具有子功能的函數中使用exec關鍵字有關。 Python的需要你明確地確定其范圍exec將使用在這種情況下運行。

exec命令: execfile('file.py') 不安全且有點hacky。 盡可能避免。 產生一個shell進程: os.system('python file.py') 絕望時使用。

PS:我還沒有嘗試過調用/運行相同的文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM