每次修改脚本后都需在终端重启Python
每次我对一个Python脚本做修改后,都需要重新启动Python并重新导入这个模块。请告诉我有什么办法可以在不重新启动Python的情况下,修改我的脚本并运行它们。
谢谢。
5 个回答
1
你的意思是你直接在交互式的 Python 环境里输入代码,还是通过终端运行类似 python myscript.py
这样的命令来执行你的 .py 文件呢?
2
如果只是某个模块发生了变化,你可以在你的脚本中调用 reload(module) 来重新加载这个模块。
5
我有个建议,基于你描述的工作流程:
首先,我在终端运行python3.1,然后做“import module”,接着每次都要运行模块里的一个方法,比如“module.method(arg)”。每次调试代码时,我都得重复这个过程,尽管改动很小。这实在是太低效了。
与其每次都打开交互式的Python环境,不如让模块本身可以直接执行。最简单的方法是在模块的底部添加一个代码块,像这样:
if __name__ == '__main__':
method(arg) # matches what you run manually in the Python shell
这样,你就可以直接运行模块,而不需要先运行python3.1,再导入模块,再调用方法,你可以这样做:
python3.1 modulename.py
Python会执行if __name__ == '__main__'
代码块里的内容。但是,如果这个模块被其他Python模块导入,这段代码就不会被执行。关于这个常见的Python用法,你可以在Python教程中找到更多信息。
这样做的好处是,当你修改了代码后,通常只需按上箭头再按回车就能重新运行模块,不需要麻烦地重新加载。