python - 重新加载模块给出 NameError : name 'reload' is not

我正在尝试重新加载我已经在 Python 3 中导入的模块。我知道您只需要导入一次,再次执行 import 命令不会做任何事情。

执行 reload(foo) 出现此错误:

Traceback (most recent call last):
    File "(stdin)", line 1, in (module)
    ...
NameError: name 'reload' is not defined

错误是什么意思?

最佳答案

reload是 Python 2 中的内置函数,但不是 Python 3 中的内置函数,因此您看到的错误是预期的。

如果您确实必须在 Python 3 中重新加载模块,您应该使用:

  • importlib.reload适用于 Python 3.4 及更高版本
  • imp.reload适用于 Python 3.0 到 3.3(自 Python 3.4 起已弃用,支持 importlib)

关于python - 重新加载模块给出 NameError : name 'reload' is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/961162/

相关文章:

android - adb 设备命令不起作用

linux - 即使在安装 npm install -g gulp 后也找不到本地 gulp 安装

python - django 测试应用程序错误 - 创建测试数据库时出错 : permission

linux - 发送电子邮件的 Shell 脚本

python - Queue.Queue 与 collections.deque

python - 如何让 Pylint 识别 NumPy 成员?

linux - 如何更改 Ubuntu 中的默认 GCC 编译器?

python - 从动态导入的模块中的类的字符串名称动态实例化?

python - 为什么 python setup.py 在 Travis CI 上说无效命令 'b

linux - 我的环境变量是什么?