Python无法找到指定文件夹:如何修复项目内图片目录访问报错
修复FileNotFoundError的解决方案
这个问题我碰到过好几次啦,核心问题出在路径的写法上——你用的"/images/"是系统根目录的绝对路径,但你的images文件夹其实是Python项目文件夹的子目录,所以系统自然找不到它。给你几个靠谱的修复方法:
方法一:使用相对路径(最简单)
如果你的Python脚本直接放在项目根目录下,那直接用相对路径就能定位到子文件夹,去掉路径开头的/就行:
import glob, os # 切换到项目下的images子文件夹(相对路径写法) os.chdir("images/") # 也可以写成 os.chdir("./images/"),效果完全一致 # 遍历所有图片文件(*.*匹配所有格式,也可以指定比如"*.jpg") for filename in glob.glob("*.*"): print(filename)
方法二:用绝对路径(最稳妥)
有时候你可能会从其他目录运行脚本,这时候相对路径就容易出问题。可以先获取脚本所在的绝对目录,再拼接images文件夹的路径,这样不管在哪运行都不会错:
import glob, os # 获取当前脚本所在的文件夹绝对路径 script_folder = os.path.dirname(os.path.abspath(__file__)) # 拼接images文件夹的完整路径 images_folder = os.path.join(script_folder, "images") # 切换到目标文件夹 os.chdir(images_folder) # 遍历并打印文件名 for filename in glob.glob("*"): print(filename)
方法三:不切换目录,直接遍历(更简洁)
其实完全没必要切换目录,直接用glob指定目标文件夹的路径就行,代码更清爽:
import glob, os # 直接匹配images文件夹下的所有文件 for file_path in glob.glob("images/*"): # 如果只想要文件名(不要完整路径),用os.path.basename提取 print(os.path.basename(file_path))
最后再检查两个小细节:
- 确认images文件夹的名称拼写完全正确(注意大小写,Windows虽然不区分,但尽量保持一致避免坑)
- 如果images是嵌套在其他子文件夹里的(比如
项目/src/images),记得把路径写成对应的相对路径,比如"src/images/"
内容的提问来源于stack exchange,提问作者user9687048
相关产品推荐
相关产品推荐

