我对交互式IPython shell中importlib
的行为感到困惑。当我运行时:
import importlib.reload as ilrel
我收到错误ImportError: No module named 'importlib.reload'
.这正是我导入其他模块的方式,例如 matplotlib.pyplot
.
目前,我只是简单地单独导入importlib
,然后使用importlib.reload(<module name>)
.这不是一个主要问题,但为什么第一种方法不起作用?
因为reload
不是模块,所以它是importlib
模块中的一个函数。没有什么关于进口库的具体内容;这就是导入对所有模块的工作方式。
如果你只想要函数本身,你可以做from importlib import reload
。
另请注意,此函数仅在 Python 3.4+ 中可用。