从Google Drive导入图片到Colab时glob读取jpg文件列表为空如何解决
问题原因与解决方案
你的代码本身逻辑没有语法错误,fake_img为空的核心原因是glob.glob()没有匹配到任何符合规则的文件,常见诱因如下:
- 未挂载Google Drive到Colab运行环境
Colab默认的/content目录是临时运行存储空间,不会自动加载你的Google Drive数据,需要先执行挂载代码完成映射:
挂载完成后Google Drive的根目录对应路径为from google.colab import drive drive.mount('/content/drive')/content/drive/MyDrive/,你需要将glob的匹配路径替换为文件的实际存放路径,示例如下:images = glob.glob('/content/drive/MyDrive/Hurricane_Sandy/fakes/*.jpg') - 匹配规则与实际文件属性不匹配
glob的路径匹配是大小写敏感的,以下情况都会导致匹配为空:- 文件夹名拼写错误,比如
Hurricane_Sandy大小写写错、fakes文件夹名称拼写有误 - 图片文件后缀为大写
JPG而非你写的小写jpg,可以用通配符兼容大小写情况:images = glob.glob('/content/实际文件路径/fakes/*.[jJ][pP][gG]')
- 文件夹名拼写错误,比如
- 排查验证方法
可以直接在Colab单元格执行路径查看命令,确认对应路径下是否存在目标文件:
如果执行后提示路径不存在或者没有jpg文件,修正路径即可解决问题。!ls /content/Hurricane_Sandy/fakes
内容的提问来源于stack exchange,提问作者farheen fatima
相关产品推荐
相关产品推荐

