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

Colab运行报FileNotFoundError找不到labelfile_path无法打开CSV标签文件求助

问题排查与解决方案

错误原因

  • 直接报错原因:最后一行open函数传入的是字符串"labelfile_path",而不是你之前定义的路径变量labelfile_path,引号把变量名变成了固定字符串,系统会去查找名为labelfile_path的文件,自然找不到。
  • 路径拼接错误:你构造labelfile_path时使用了未定义的变量pspifiles[j],你前文定义的存储标签文件名的变量是labelfiles,不存在pspifiles这个变量,会直接导致路径生成错误。
  • 目录读取逻辑错误:os.chdir()的返回值为None,你将FolderA、FolderB赋值为os.chdir()的执行结果,后续os.listdir(FolderA)等价于os.listdir(None),只会读取当前工作目录的内容,而非你预期的1_Trainlabel目录内容,会导致后续拼接的路径全部错误。
  • Shell命令使用不规范:Colab中使用!ls(路径)的写法容易因为路径空格、特殊字符出现解析异常,推荐直接使用Python原生的os.listdir()读取目录内容,避免不必要的解析错误。

修正后代码示例

import os
# 直接定义目录路径,不要用os.chdir赋值
label_root = '/content/gdrive/My Drive/Data/Train/1_Trainlabel/'
img_root = '/content/gdrive/My Drive/Data/Train/1_Trainimage/'

a = os.listdir(label_root)
for k in range(len(a)):
    Label_folder = os.path.join(label_root, a[k])
    img_folder = os.path.join(img_root, a[k])
    # 用os.listdir替代!ls命令
    folders = os.listdir(Label_folder)
    for i in range(len(folders)):
        foldername = folders[i]
        Label_folder1 = os.path.join(Label_folder, foldername)
        img_folder1 = os.path.join(img_folder, foldername)
        imgfiles = os.listdir(img_folder1)
        labelfiles = os.listdir(Label_folder1)
        for j in range(len(labelfiles)):
            # 替换不存在的pspifiles为labelfiles
            labelfile_path = os.path.join(Label_folder1, labelfiles[j])
            imgfile_path = os.path.join(img_folder1, imgfiles[j])
            # 去掉变量名外的引号,直接传路径变量
            labelfile = open(labelfile_path, "r")
            # 后续处理逻辑记得关闭文件,或者用with open更安全

小提示:文件读写更推荐用with open(labelfile_path, 'r') as labelfile:的写法,会自动处理文件关闭,避免资源泄漏。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 16:57:00