相对导入和“ModuleNotFoundError:没有名为 x 的模块”
在 Python 3 中,相对导入用于导入包内的模块。但是,如果您在尝试执行相对导入时遇到错误“ModuleNotFoundError:没有名为 x 的模块”,则表明您的包结构或导入模块的方式存在问题。
Python 3 中的相对导入
相对导入允许您导入与当前模块属于同一包的模块。为此,您可以在导入语句前面添加一个点 (.) 以指示您正在从当前目录导入。例如:
<code class="python">from . import config</code>
ModuleNotFoundError 异常
当 Python 无法找到您尝试导入的模块时,会发生“ModuleNotFoundError”异常。发生这种情况的原因有多种,包括:
相对导入问题排查
要解决“没有名为 x 的模块”问题" 尝试相对导入时出错:
<code class="python">import <package_name>.config</code>
与 main 模块的相对导入
请注意,不允许从 进行相对导入main 模块,直接运行Python脚本时执行。在这种情况下,您将需要使用绝对导入来引用包中的模块。
以上是\'ModuleNotFoundError:没有名为 x 的模块\”:为什么我的相对导入在 Python 3 中失败?的详细内容。更多信息请关注PHP中文网其他相关文章!