Python3.8: ImportError 和 ModuleNotFoundError 有什么区别

Python3.8: What's the difference between ImportError and ModuleNotFoundError

在python3.8中,ImportErrorModuleNotFoundError有什么区别?我只是想知道有什么区别以及它们为什么重要。

根据 python 文档:

The ImportError is raised when an import statement has trouble successfully importing the specified module. Typically, such a problem is due to an invalid or incorrect path, which will raise a ModuleNotFoundError in Python 3.6 and newer versions.

ModuleNotFoundErrorImportError 种类 :

>>> issubclass(ModuleNotFoundError, ImportError)
True

专门在根本找不到模块时抛出。找到文件后可能会出现其他问题,但在加载文件或定义函数的实际过程中:这些问题会引发 ImportError.

关于 ModuleNotFoundError,您 可能无能为力;您可以忽略它并且不使用稍后在代码中尝试导入的模块,或者退出并修复您的环境,以便找到模块