非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

【Python】フォルダ内の画像ファイル名を一括変更する方法

   

Pythonを使って、指定したフォルダ内の.jpg画像ファイル名をファイル名順に連番で一括変更する方法を紹介します。以下のコードで実行可能です。

import os

def rename_images_in_folder(folder_path):
    # 指定したフォルダ内のファイルを取得し、.jpgファイルだけにフィルタリング
    files = sorted([f for f in os.listdir(folder_path) if f.lower().endswith('.jpg')])

    # ファイル名を1からの連番に変更
    for index, filename in enumerate(files, start=1):
        # 新しいファイル名を設定
        new_name = f"{index:03}.jpg"  # 例: 001.jpg, 002.jpg
        old_path = os.path.join(folder_path, filename)
        new_path = os.path.join(folder_path, new_name)

        # ファイル名の変更
        os.rename(old_path, new_path)
        print(f"{filename} -> {new_name}")

rename_images_in_folder("path/to/your/folder")
 

 

コードの説明

ファイルの取得とフィルタリング

os.listdir()を使ってフォルダ内のファイルをリスト化し、.jpg拡張子を持つファイルだけを残します。

連番のファイル名を設定

enumerate()を使って、indexを1から始めることで、ファイル名を連番にします。f”{index:03}.jpg”の部分で、連番が3桁にゼロパディングされます(例: 001.jpg, 002.jpg)。

ファイル名の変更

os.rename()でファイル名を変更します。

 

注意点

フォルダ内の画像がすべて.jpg形式であることを確認してください。他の画像形式の場合はフィルタを変更する必要があります。

path/to/your/folderを画像が入ったフォルダのパスに置き換えてください。

 

スポンサーリンク

 - Python