You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Python 3.7中PIL打开图片触发FileNotFoundError问题求助

解决PIL打开图片时的FileNotFoundError问题

嘿,我看你作为Python初学者,在用PIL打开图片时碰到了FileNotFoundError,咱们一步步来搞定这个问题~

首先看你代码里的关键问题:你写的Image.open("v")里的"v"既不是你的.jpg图片文件名,也不是有效的文件路径,这肯定找不到文件呀!咱们先从正确指定图片路径开始调整:

第一步:确认图片的正确位置和文件名

你提到图片放在三个文件夹里,优先推荐把图片和你的Python代码文件(temp.py)放在同一个文件夹(也就是「Python代码文件夹」),这样操作最方便;如果放在「我的图片文件夹」也没关系,只要拿到正确的绝对路径就行。别把自己的图片放到anaconda3\lib\site-packages\PIL文件夹,那是库的安装目录,放自己的文件不合适。

第二步:正确的代码示例

示例1:图片和代码文件在同一个文件夹

假设你的图片叫my_photo.jpg,和temp.py在同一个文件夹里,代码改成这样:

from PIL import Image
# 直接写正确的图片文件名(带.jpg后缀)
image = Image.open("my_photo.jpg")
print("尺寸和格式:", image.size, image.format)
data = list(image.getdata())
print(data[:30])

示例2:用图片的绝对路径(比如在「我的图片文件夹」)

先找到图片的完整绝对路径,比如Windows下可能是C:/Users/Optimal Conseil/Pictures/my_photo.jpg(注意路径用斜杠/或者双反斜杠\\),代码改成:

from PIL import Image
# 替换成你自己的图片绝对路径
image_path = "C:/Users/Optimal Conseil/Pictures/my_photo.jpg"
image = Image.open(image_path)
print("尺寸和格式:", image.size, image.format)
data = list(image.getdata())
print(data[:30])

第三步:排查小技巧

如果还是报错,可以试试这些方法:

  • 检查文件名拼写:有没有把.jpg写成.jpeg,或者大小写错误(Windows下不区分大小写,但最好和实际文件名一致)
  • 验证路径有效性:把你写的路径复制到文件资源管理器里,看看能不能直接打开图片,确认路径是对的
  • 查看当前工作目录:有时候代码运行的目录和你以为的不一样,用下面的代码输出当前目录,确认图片是否在这个目录里:
    import os
    print(os.getcwd()) # 输出当前工作目录
    

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

火山引擎 最新活动