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

Python2.7运行脚本报No module named src.results错误排查

问题根因
  • 核心原因:Python 2.7 不支持Python3.3+引入的隐式命名空间包特性,所有可被导入的包目录下必须存在__init__.py文件(内容可以为空),否则解释器不会将对应目录识别为合法Python包。你的src、src/results目录大概率缺失该标识文件,这是导入失败的直接诱因。
  • 配置错误:你配置PYTHONPATH的逻辑有误。导入语句from src.results import *的搜索逻辑是:遍历sys.path下的所有路径,寻找名为src的包/模块,再从其中加载results。因此只需要将src的父目录(即项目根目录/home/bojanpoletan/Proj)加入搜索路径即可,你额外添加的src、src/results子目录路径属于冗余配置,无法帮助完成该导入语句,极端情况还会打乱模块搜索优先级。
  • 运行路径错误:如果启动脚本时当前工作目录不是bks-cascade.py所在的项目根目录,Python会自动将脚本所在的错误路径加入sys.path头部,也会触发找不到模块的报错。
解决步骤
  1. 清理冗余的PYTHONPATH配置,使用绝对路径指定项目根目录为搜索路径,避免相对路径随工作目录变化失效,执行命令:
export PYTHONPATH="/home/bojanpoletan/Proj:$PYTHONPATH"
  1. 补全包必需的__init__.py标识文件:
    • 进入项目根目录:cd /home/bojanpoletan/Proj
    • 为src目录创建空标识文件:touch src/__init__.py
    • 如果src/results是目录(而非单个results.py文件),为该目录也创建标识文件:touch src/results/__init__.py
  2. 始终在项目根目录下启动脚本,不要在src等子目录下运行:
cd /home/bojanpoletan/Proj
python bks-cascade.py
验证方法

配置完成后可以先执行单行命令验证导入是否正常,无任何输出即代表导入链路正常:

python -c "from src.results import *"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 19:48:29