我有一个庞大的Python脚本,当它崩溃时需要自动重新启动。当我尝试通过将脚本包装到函数中然后通过while True
进行调用的标准方法时,出现此错误:
SyntaxError: unqualified exec is not allowed in function 'wrappedFunc' because it contains a nested function with free variables
据我了解,这是由于我的主脚本具有子功能。我是否仍可以通过Python进行操作,还是应该在Windows中通过批处理文件完成操作?
答案 0 :(得分:0)
该错误与在具有子功能的函数中使用exec
关键字有关。 Python需要您明确确定exec
在这种情况下将用于哪个范围。
答案 1 :(得分:0)
exec命令:jsonb
。不安全且有点hacky。尽可能避免。
产生一个shell进程:execfile('file.py')
。绝望时使用。
PS:我没有尝试过调用/运行相同文件