重新加载当前正在运行的python脚本

sta*_*kit 5 python debugging

在python中,有一个reload方法可以重新加载导入的模块,但是有一种方法可以重新加载当前正在运行的脚本而不重新启动它,这对于调试脚本和在脚本运行时实时更改代码非常有帮助。在Visual Basic中,我记得有一个类似的功能称为“应用代码更改”,但我需要一个与“ refresh()”之类的函数调用类似的功能,该功能将立即应用代码更改。

当修改脚本中的独立功能并且我们需要立即应用代码更改而不重新启动脚本时,此操作将顺利进行。

简而言之:

reload(self) 
Run Code Online (Sandbox Code Playgroud)

工作?

syn*_*nym -1

如果您在交互式会话中运行,您可以使用ipython autoreload

autoreload 在进入执行在 IPython 提示符下键入的代码之前自动重新加载模块。

当然,这也适用于模块级别,因此您可以执行以下操作:

>>>import myscript
>>>myscript.main()
*do some changes in myscript.py*
>>>myscript.main() #is now changed
Run Code Online (Sandbox Code Playgroud)