研一 | 使用python批量重命名图片

121 阅读1分钟

拍摄的图片名字过长,使用python进行重命名(代码来自文心一言)。

import os
def rename_images(directory, prefix="img", start_index=1):
    # 获取目录中的所有文件
    files = os.listdir(directory)

    # 过滤出图片文件(这里假设图片文件扩展名为jpg, jpeg, png, gif, bmp)
    image_files = [f for f in files if f.lower().endswith(('.jpg', '.jpeg', '.png', '.gif', '.bmp'))]

    # 对文件进行排序,以确保重命名顺序正确
    image_files.sort()

    # 遍历图片文件并重命名
    for index, filename in enumerate(image_files, start=start_index):
        # 获取文件扩展名
        file_extension = os.path.splitext(filename)[1]

        # 生成新的文件名
        new_filename = f"{prefix}_{index:03d}{file_extension}"

        # 构建旧文件和新文件的完整路径
        old_file_path = os.path.join(directory, filename)
        new_file_path = os.path.join(directory, new_filename)

        # 重命名文件
        os.rename(old_file_path, new_file_path)
        print(f"Renamed: {old_file_path} -> {new_file_path}")

# 使用示例
directory_path = "C:/……/train"  # 替换为你的图片目录路径
rename_images(directory_path, prefix="img", start_index=1)