You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行单元测试遇ModuleNotFoundError,如何修复Python导入问题?

解决Python模块导入报错的方案

1. 把目录标记为Python包

给code、modules、tests目录都创建空的__init__.py文件,让Python识别这些目录为可导入的包。调整后的结构:

- code
  __init__.py
  - modules
    __init__.py
    - tests
      __init__.py
      test_data_quality_service.py
    data_quality_service.py
  - web
    __init__.py

2. 配置PYTHONPATH环境变量

把包含code文件夹的项目根目录添加到PYTHONPATH:

  • Linux/macOS终端临时设置:
    export PYTHONPATH="/path/to/your/project/root:$PYTHONPATH"
    
  • Windows终端临时设置:
    set PYTHONPATH=C:\path\to\your\project\root;%PYTHONPATH%
    

设置完成后,就能正常使用绝对导入:

from code.modules.data_quality_service import DataQualityChecker

3. 正确使用相对导入

用相对导入时,不要直接运行测试文件,要在项目根目录下执行pytest命令:

pytest code/modules/tests/test_data_quality_service.py

此时测试文件里的相对导入语句from ..data_quality_service import DataQualityChecker就能正常工作。

4. PyCharm专属配置

右键点击项目根目录(包含code的文件夹),选择Mark Directory as -> Sources Root,PyCharm会自动将该目录加入PYTHONPATH,识别完整的包结构,解决导入报错。

内容的提问来源于stack exchange,提问作者dark_matter88

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 07:09:11