python将路径下图片批量化重命名(前后缀及文件格式转化)

1 - 为文件下的图片批量化加上 / 去掉 后缀名

如 将文件夹中的图片名“label_001.png”, "label_002.png", ... 转化为 “001.png”, "002.png", ...

import os

def rename_images(folder_path, prefix):
    # 获取文件夹中的所有文件
    files = os.listdir(folder_path)

    # 遍历文件夹中的每个文件
    for file in files:
        # 检查文件是否为图片文件并且以指定前缀开头
        if file.endswith(('.jpg', '.jpeg', '.png', '.gif')) and file.startswith(prefix):
            # 1.构建新的文件名,去掉前缀
            new_name = file[len(prefix):]

            # # 2.构建新的文件名,加上前缀
            # new_name = prefix + file

            # 构建文件的完整路径
            old_path = os.path.join(folder_path, file)
            new_path = os.path.join(folder_path, new_name)

            # 重命名文件
            os.rename(old_path, new_path)

            print(f"重命名文件:{file} -> {new_name}")

# 指定文件夹路径和前缀
folder_path = ' YOUR PATH'  # 替换为工作中实际的文件夹路径
prefix = 'label_'  # 替换为实际的前缀

# 调用函数进行重命名
rename_images(folder_path, prefix)

2 -  批量化将图像格式从PNG到JPG进行转换

import os
from PIL import Image

def convert_png_to_jpg(folder_path):
    # 获取文件夹中的所有文件
    files = os.listdir(folder_path)

    # 遍历文件夹中的每个文件
    for file in files:
        # 检查文件是否为PNG图片文件
        if file.endswith('.png'):
            # 构建文件的完整路径
            file_path = os.path.join(folder_path, file)

            # 打开PNG图片
            image = Image.open(file_path)

            # 将PNG图片转换为JPEG格式
            new_file_path = os.path.splitext(file_path)[0] + '.jpg'
            image.convert('RGB').save(new_file_path, 'JPEG')

            print(f"转换文件:{file} -> {os.path.basename(new_file_path)}")


# 指定图片的文件夹路径
folder_path = ' YOUR PATH'  # 替换为工作中实际的文件夹路径
# 调用函数进行PNG到JPG的转换
convert_png_to_jpg(folder_path)

猜你喜欢

转载自blog.csdn.net/m0_46427461/article/details/134901519
今日推荐