让我们面对它,改变它后重新加载python代码的整个业务是一团糟。我想了一会儿回来,在口译员打电话import <module>
比from <module> import <class/function>
好,因为然后我可以拨打reload(module)
获取更新的代码。重新加载模块已导入到另一个模块
但我现在有更复杂的问题。所以我有这个文件,module1.py,并在顶部,它说:
from module2 import <class1>, <function1>, etc.
然后我去改代码中模块2。原来,调用reload(module1)
将不会重新加载模块2中更改的代码,即使module2的代码是在模块1的顶部导入的。有没有什么方法可以在不重新启动解释器的情况下重新载入一切?
任何人对我的情况下,大约风格得到之前,我只想说的是:
- 我只能拨打
reload
从解释,从未在活动代码。这个问题涉及我测试新代码的时间。 - 我从来没有从
<module> import *
打电话,我知道这会破坏可读性
这里是一个递归重装功能,你可以使用:http://stackoverflow.com/a/17194836/1020625 – AlbertFerras
等待,这是一个非常好的答案。如果您将其作为答案发布,那么我会接受它。 –
完成!谢谢:) – AlbertFerras