运行 图片转换脚本给我 "no such file"

Running image conversion script gives me "no such file"

我有这个用 Python 编写的图像转换脚本。我在文件夹中有一些图像,例如 turbo1、turbo2 等等...

我需要将它们从 png 转换为 jpeg。

这是我的代码:

from PIL import Image
import os

directory = r'C:\Users\Filip\Desktop\turbos'
c=1
for filename in os.listdir(directory):
    if filename.endswith(".PNG"):
        im = Image.open(filename)
        name='turbo'+str(c)+'.jpeg'
        rgb_im = im.convert('RGB')
        rgb_im.save(name)
        c+=1
        print(os.path.join(directory, filename))
        continue
    else:
        continue

我收到这个错误:

Traceback (most recent call last):
  File "c:\Users\Filip\Desktop\convert.py", line 9, in <module>
    im = Image.open(filename)
  File "C:\Python\lib\site-packages\PIL\Image.py", line 2953, in open
    fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'turbo1.PNG'

如果我将 filename.endswith(".PNG"): 更改为 filename.endswith(".png"): 它不会给我那个错误,但图像不会转换。

我在这里错过了什么?

.png.PNG。是两个不同的文件扩展名,您的代码应该是

im = Image.open(os.path.join(directory, filename))