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

Python项目无法导入src.utills中save_object方法的问题求助

排查Python模块导入问题的实操步骤

1. 先核对基础结构与拼写

首先确认你的项目根目录下的src文件夹里有__init__.py空文件(用来标记这是Python包),同时检查:

  • utills.py的文件名拼写和导入语句里的utills完全一致(别把utils写成utills,或者反过来)
  • utills.py里确实定义了save_object函数,函数名大小写、拼写和导入时完全匹配(Python大小写敏感)

标准项目结构应该是这样:

你的项目名/
├── src/
│   ├── __init__.py
│   ├── utills.py
│   ├── data_ingestion.py
│   └── data_transformation.py

2. 检查运行路径是否正确

  • 如果在项目根目录运行脚本:用python src/data_ingestion.py,此时from src.utills import save_object的写法是对的
  • 如果在src目录内运行脚本:用python data_ingestion.py,此时导入语句要改成from utills import save_object(因为两个文件在同一目录下)

3. 排查循环导入问题

确认data_ingestion.py、data_transformation.py、utills.py之间有没有循环引用——比如data_ingestion导入data_transformation,data_transformation导入utills,结果utills又导入data_ingestion,这种循环会直接导致导入报错。

4. 临时调试路径(应急方案)

如果以上都没问题,在data_transformation.py开头加这段代码,查看Python的模块搜索路径,确认项目根目录或src是否在路径里:

import sys
print(sys.path)

要是路径里没包含项目根目录,手动添加:

import sys
from pathlib import Path
# 把项目根目录加到搜索路径里
sys.path.append(str(Path(__file__).parent.parent))

这只是临时解决,更推荐用正确的运行目录来处理。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 22:54:56