Python 如果语句为false,则重命名图像文件

Python 如果语句为false,则重命名图像文件,python,image,Python,Image,我有一个文件夹,我把一些图片放在里面。图像的名称是整数,因此,例如,我可以有5个图像的名称为567.jpg、568.jpg、569.jpg、570.jpg和571.jpg。整数是随机的,但是,它们总是以如上所述的顺序出现,即每幅图像增加一个整数 所以我想做的是浏览这个文件夹中的图像,看看图像的大小。例如,如果图像的宽度低于600px,我想删除此图像并转到下一个图像。现在,如果该图像高于600px,则应按照顺序重命名该图像 因此,原则上应该发生的是: 345.jpg->超过600px->什么也没发

我有一个文件夹,我把一些图片放在里面。图像的名称是整数,因此,例如,我可以有5个图像的名称为567.jpg、568.jpg、569.jpg、570.jpg和571.jpg。整数是随机的,但是,它们总是以如上所述的顺序出现,即每幅图像增加一个整数

所以我想做的是浏览这个文件夹中的图像,看看图像的大小。例如,如果图像的宽度低于600px,我想删除此图像并转到下一个图像。现在,如果该图像高于600px,则应按照顺序重命名该图像

因此,原则上应该发生的是:

345.jpg->超过600px->什么也没发生 346 jpg->600px下->被删除 347.jph->Over 600px->重命名为346.jpg以遵循1步顺序

等等

我已尝试使用以下代码:

import os
from PIL import Image

img_dir_path = "\"

pic_list = range(567,572,1)

for image in pic_list:
    img = Image.open("{}/{}.jpg".format(img_dir_path, image))
    if img.size[0] < 600:
        os.remove("{}/{}.jpg".format(img_dir_path, image))
    else:
        if os.path.isfile("{}/{}.jpg".format(img_dir_path, int(image)-1)) == False:
            os.rename('{}/{}.jpg'.format(img_dir_path, int(image)), '{}/{}.jpg'.format(img_dir_path, int(image)-1))
        else:
            print "No worries"
对于重命名过程,它

我知道这是一些草率的代码,但我还不是Python专家,所以我通常只是先让它工作,然后再调整


此外,出现的另一个问题是,当检查第一个条目之前的条目是否存在/是否为false时,它现在始终为false,因为第一个图像之前当然没有任何内容。因此,当然不应重命名列表中第一个名称的图像。但是,由于我甚至无法使其正常工作,所以我不打算尝试修复它。

在重命名img=image.open{}/{}.jpg.formatimg\u dir\u路径之前,请关闭打开的图像


重命名之前

请关闭重命名img=image之前打开的图像。打开{}/{}.jpg.formatimg_dir_路径,imageImage.close before renameYup,就是这样。如果你想让答案被接受,请回答:谢谢@Denver Dang添加了答案
WindowsError: [Error 32] The process cannot access the file because it is being used by another process
Image.close()