首页 > 解决方案 > 导入嵌套模块时出现 ModuleNotFoundError

问题描述

我有以下目录结构

project
  example
    module
      file1.py
      __init__.py
  test
    module
      test1.py
      __init__.py

我需要重用 test1.py 中的代码

在 file1.py 我将模块导入为

from test.module.test1 import MyClass

由于设置了内容根,当我在 PyCharm 中运行时,该代码对我有用。在终端的情况下,只有当我将 PYTHONPATH 设置为 "/home/ubuntu/project" 时,我才能运行该示例。即我的项目文件夹。

如果未设置路径,则会出现以下错误

ModuleNotFoundError: No module named 'test.module'

代码在 CI 中失败。在运行 file1.py 之前,我无法控制设置 PYTHONPATH。

有没有办法在 file1.py 中用 python 修复它(通过设置一些路径)。

我无法将测试代码移动到一个共同的地方,因为它在许多地方被引用。

标签: python

解决方案


推荐阅读