【发布时间】:2016-03-31 03:14:16
【问题描述】:
这个问题类似于 [Python: reload component Y imported with 'from X import Y'? ]。但是,显然 reload 在 python 3 中不起作用。
我最初有
from vb2GP import vb_Estep
但是,由于一个错误,我修改了 vb_Estep。当我尝试使用 importlib.reload(vb_Estep) 重新加载时,出现错误:
File "<ipython-input-61-72416bca3a93>", line 1, in <module>
importlib.reload(vb_Estep)
File "/Users/sachin/anaconda/lib/python3.5/importlib/__init__.py", line 139, in reload
raise TypeError("reload() argument must be module")
TypeError: reload() argument must be module
我什至尝试了importlib(vb2GP.vb_Estep),但我得到了错误NameError: name 'vb2GP' is not defined,这是有道理的,因为我从来没有导入vb2GP。
所以问题是,如何在 Python3 中使用importlib 重新加载组件。
【问题讨论】:
-
您是否修改了
vb_Estep(如果它是可变的)或者您是否将名称重新绑定到某个新对象(如果它不可变,这将是“修改”它的唯一方法)? -
我只是重写了几行。我对 python 很陌生,所以不完全确定这是否回答了这个问题。
标签: python-3.x