用Python 3.4重新加载模块

Ziz*_*212 19 python python-module python-3.x python-3.4

我知道这可能听起来像一个非常愚蠢的问题,但无论如何.我在Python中创建了一个小脚本,我在shell中做了一些更改.通常,在OS X计算机上(它正在运行Python 2.7),我只需输入reload(the_module)并重新加载包含我所做更改的模块.但是,当我在这里重新加载模块时(在windows python v.3.4上),它只是给了我这个:

>>> reload(instfile)
Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    reload(instfile)
NameError: name 'reload' is not defined
Run Code Online (Sandbox Code Playgroud)

然后当我输入时imp.reload(my_module),它只是说该函数已被弃用.我似乎无法找到新功能(或它的等效物)将在任何地方,所以如果有人可以帮助我,这将是伟大的!:)

iCo*_*dez 44

imp模块在Python 3.4中被弃用,以支持该importlib模块.从文件建立imp模块:

从版本3.4开始imp不推荐使用:该软件包正在等待弃用importlib.

所以,你应该reload从那里使用该功能:

>>> import importlib
>>> importlib.reload
<function reload at 0x01BA4030>
>>> importlib.reload(the_module)
Run Code Online (Sandbox Code Playgroud)

  • @ user3285866运行实际的函数`importlib.reload(MODULE)` (2认同)