0
0

特定のディレクトリ下のファイルを4桁の連番に名前を変更する

Posted at

名前を4桁の連番に変更する

main.py
import os
import glob

abs_path = os.path.dirname(__file__)

# ディレクトリのパスを指定する
dir_path = str(abs_path) + "/moto_kopikopi"

# 画像ファイルの拡張子を指定する
extensions = ["jpg", "png", "gif"]

# 連番の初期値を指定する
num = 1

# 指定したディレクトリにある画像ファイルを検索する
for ext in extensions:
    files = glob.glob(os.path.join(dir_path, "*." + ext))
    for file in files:
        # ファイル名と拡張子を分割する
        base, ext = os.path.splitext(file)
        # 4桁の連番にフォーマットする
        new_name = "{:04d}".format(num) + ext
        # 新しいファイル名のパスを作成する
        new_path = os.path.join(dir_path, new_name)
        # 同じ名前のファイルが存在しない場合は、リネームする
        if not os.path.exists(new_path):
            os.rename(file, new_path)
            print(f"{file} -> {new_path}")
        # 同じ名前のファイルが存在する場合は、スキップする
        else:
            print(f"{file} -> {new_path} (skipped)")
        # 連番を1増やす
        num += 1

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0