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

Colab中导入同文件夹脚本报错求助(已核查文件路径)

解决Colab中导入同文件夹脚本失败的问题

我懂这种明明文件就在眼前却导不进去的抓狂感!Colab的文件系统有时候确实有点“傲娇”,哪怕你看着文件在同一个文件夹,也可能因为工作目录、挂载设置或者细节疏忽导致导入失败。下面是我整理的几个亲测有效的排查和解决步骤:

  • 先确认当前工作目录是否正确
    Colab默认的工作目录是/content,你可以用以下命令查看当前位置和目录下的文件:

    !pwd  # 查看当前工作目录
    !ls   # 列出当前目录下的所有文件
    

    如果你的脚本不在这个目录里,用IPython魔法命令切换到脚本所在文件夹(注意用%cd而不是!cd,后者只是临时切换shell环境,不会改变Python的工作路径):

    %cd /path/to/your/script/folder
    
  • 检查文件名与导入语句的大小写匹配
    Colab运行在Linux环境下,文件名是严格区分大小写的!比如你的脚本叫DataProcessor.py,但你写import dataprocessor就会直接报错,这点很容易被忽略,一定要仔细核对。

  • 排查文件上传/挂载的完整性
    如果是通过Colab的“上传文件”功能传的脚本,偶尔会出现上传不完整或者缓存异常的情况。可以先删除现有文件重新上传:

    !rm your_script.py
    

    如果是挂载Google Drive的文件夹,务必确认挂载路径正确,并且文件夹里确实存在目标脚本。挂载后可以先通过!ls /content/drive/MyDrive/your_folder验证文件是否存在。

  • 手动添加Python搜索路径
    如果不想切换工作目录,也可以把脚本所在文件夹添加到Python的模块搜索路径里:

    import sys
    sys.path.append("/path/to/your/script/folder")
    import your_script
    
  • 处理相对导入的问题
    如果你的脚本里用了相对导入(比如from . import helper),在Colab的交互式环境中可能会失效,因为Colab默认把单个脚本当作顶层模块。这时候可以把相对导入改成绝对导入,或者在脚本所在文件夹中添加一个空的__init__.py文件,把文件夹变成一个可导入的Python包。

举个实际操作的例子:

假设你的utils.py脚本存放在Google Drive的Colab_Notebooks文件夹里,操作流程如下:

# 先挂载Google Drive(如果还没挂载)
from google.colab import drive
drive.mount('/content/drive')

# 切换到脚本所在目录
%cd /content/drive/MyDrive/Colab_Notebooks

# 确认文件存在
!ls

# 导入脚本
import utils

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 08:14:10