无法获取图片路径存入列表?Python路径问题求助
解决glob读取PNG文件无结果的问题
以下是几个排查和解决方向:
文件名大小写不匹配
glob默认区分大小写,如果你代码里写的是*.PNG,但实际图片后缀是小写的.png,就会匹配失败。可以改成兼容大小写的写法:glob.glob('./images/*.[pP][nN][gG]')或者直接统一写成
*.png(根据你实际的文件后缀调整)。当前工作目录与脚本目录不一致
如果你不是在脚本所在的目录运行代码,./images会指向当前运行命令的目录下的images,而非脚本所在目录。解决方法是先获取脚本的绝对路径,再拼接目标文件夹:import os import glob from PIL import Image # 获取脚本所在的绝对目录 script_path = os.path.dirname(os.path.abspath(__file__)) # 拼接images文件夹的绝对路径 images_folder = os.path.join(script_path, 'images') images = [] # 用绝对路径匹配文件 for file in glob.glob(os.path.join(images_folder, '*.png')): print(file) im = Image.open(file) images.append(im)检查文件实际情况
- 确认images文件夹里确实有PNG格式的文件,没有被隐藏后缀(比如Windows下可能显示为
xxx.png但实际是xxx.png.txt); - 如果图片存放在images的子文件夹里,需要添加
recursive=True参数并修改路径为**/*.png:glob.glob('./images/**/*.png', recursive=True)
- 确认images文件夹里确实有PNG格式的文件,没有被隐藏后缀(比如Windows下可能显示为
验证路径是否存在
先打印路径是否存在,排查基础问题:import os print(os.path.exists('./images')) # 返回True说明路径存在,False则说明路径不对
内容的提问来源于stack exchange,提问作者pattydaone
相关产品推荐
相关产品推荐

