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

Windows+PyCharm环境下PIL读取图片遇FileNotFoundError等问题求助

解决PIL读取图片的路径及文件不存在问题

一、先解决Unicode转义错误

Windows路径里的\在Python字符串中属于转义字符,直接书写会触发unicodeescape解码错误,三种可行的路径写法:

  • 原始字符串写法:在路径前加r,让Python不解析转义字符
    from PIL import Image
    # 注意变量名要统一,你之前代码里用fp接收,但调用im.show()是变量名错误
    im = Image.open(r"C:\Users\User\Downloads.png")
    im.show()
    
  • 转义反斜杠写法:把每个\替换为\\,让Python识别为实际的路径分隔符
    from PIL import Image
    file_name = "C:\\Users\\User\\Downloads.png"
    im = Image.open(file_name)  # 无需传"r"参数,PIL默认以二进制模式读取文件
    im.show()
    
  • 正斜杠替代写法:Python支持用/作为路径分隔符,彻底避开转义问题
    from PIL import Image
    file_name = "C:/Users/User/Downloads.png"
    im = Image.open(file_name)
    im.show()
    

二、解决FileNotFoundError(文件不存在)

这是当前核心问题,按以下步骤逐一排查:

  • 检查文件名正确性:Downloads是Windows默认下载文件夹名,而非图片文件名!你大概率是把图片放在Downloads文件夹里,却误写成Downloads.png,正确路径应该类似C:\Users\User\Downloads\你的图片名称.png
  • 复制真实路径:打开文件资源管理器找到目标图片,右键→属性→复制“安全”选项卡下的完整对象名称,直接粘贴到代码中,避免手动输入路径出错
  • 用相对路径测试:把图片放到PyCharm项目目录下,直接写文件名(比如im = Image.open("test.png")),排除多层路径的权限或拼写问题
  • 修正变量名错误:你之前的代码中用fp = Image.open(...)接收实例,但后续调用im.show(),变量名不匹配会引发新错误,要保证变量名统一

额外注意事项

  • 导入PIL时无需写import PIL,直接from PIL import Image即可满足需求
  • Image.open()不需要传入第二个参数"r",PIL内部会自动以二进制模式处理图片文件,传参反而可能引发异常

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 23:46:02