Python3.5 报错:NameError: name 'reload' is not defined

python3.5 在调用自己编写的regTrees.py文件时,直接reload(regTrees)发生错误。

报错:NameError: name ‘reload’ is not defined

1.报错方式

reload('regTrees')

报错:
TypeError: reload() argument must be module

2. 解决方案尝试

查了一下相关解决方案,有网友提供了以下建议:

from imp import reload
imp. reload('regTrees')

运行报错:
NameError: name ‘imp’ is not defined

有网友建议:

import importlib
importlib.reload('regTrees')

运行报错:
TypeError: reload() argument must be module

3. 最终解决方案

import imp
import regTrees
imp. reload('regTrees')

原因是:已经导入过的模块才能用reload, reload的参数应该是模块名,而不是文件名。在pyhton3.x中要先导入文件和imp模块,才能用imp.reload()

你可能感兴趣的:(常见问题)