如何在不关闭shell的情况下重新加载/编译Python代码

1 投票
2 回答
4127 浏览
提问于 2025-04-16 19:51

可能重复的问题:
在解释器中重新加载(更新)一个 .py 文件

我在终端中测试我的一些Python类时遇到了一个问题。

每当我测试某些东西,发现代码有bug后,我就得在文本编辑器里修正它。然后我需要关闭我测试的Python环境,删除 .pyc 文件,最后再重新打开Python环境,重新运行测试,整个过程重复一遍。

有没有什么方法可以让系统自动更新代码,并在必要时重新编译,这样我就不需要一直重复我刚才说的那些步骤了。

谢谢

2 个回答

0

如果你的代码比较简单,最好的办法就是在编辑器里修改代码,然后每次都从头开始运行程序。

如果你的代码里有 inputraw_input 这样的命令,可以简单地做一个测试工具。unittestdoctest 也会很有帮助。

你不需要删除 .pyc 文件,甚至如果你想删除,也可以使用 -B 这个选项来避免一开始就生成它们。

3

这个问题和之前的一个很相似,回答里告诉你怎么用ipython实现自动重载的功能:

在解释器中重载(更新)一个模块文件

撰写回答