Pythonでディレクトリ内のファイルを1から連番でファイル名を変更する方法
概要
この記事では、Pythonを使用してディレクトリ内のファイルを1から連番でファイル名を変更する方法について解説します。ファイル名を一括で変更することは、ファイルの整理や管理を効率化するために非常に便利です。Pythonの
os
モジュールと
shutil
モジュールを使用して、ディレクトリ内のファイルを順番にリネームしていきます。
コンテンツ
- モジュールのインポート
- ファイル名の変更方法
- ディレクトリ内のファイルを一括で変更する方法
- 実行例と結果の確認
1. モジュールのインポート
まずは、
os
モジュールと
shutil
モジュールをインポートします。これらのモジュールを使用することで、ファイルのリネームやディレクトリの操作が容易になります。
import os
import shutil
2. ファイル名の変更方法
ファイル名を変更するには、
os.rename()
関数を使用します。この関数は、指定したファイルの名前を変更します。以下の例では、
os.rename()
関数を使用してファイル名を変更する方法を示します。
old_name = "old_filename.txt"
new_name = "new_filename.txt"
os.rename(old_name, new_name)
3. ディレクトリ内のファイルを一括で変更する方法
ディレクトリ内の全てのファイルを一括で変更するには、以下の手順を実行します。
- 指定したディレクトリ内のファイルの一覧を取得します。
- ファイルを順番にリネームしていきます。
以下のコードは、ディレクトリ内のファイルを1から連番でリネームする方法を示しています。
directory = "path/to/directory"
files = os.listdir(directory)
for i, file in enumerate(files):
# 新しいファイル名を作成
new_name = f"{i+1}.txt"
# ファイルのフルパスを作成
old_path = os.path.join(directory, file)
new_path = os.path.join(directory, new_name)
# ファイル名を変更
os.rename(old_path, new_path)
4. 実行例と結果の確認
以下のディレクトリ構造を考えます。
- path/to/directory
- file1.txt
- file2.txt
- file3.txt
上記のディレクトリ内のファイルを1から連番でリネームする場合、以下のようにコードを実行します。
directory = "path/to/directory"
files = os.listdir(directory)
for i, file in enumerate(files):
new_name = f"{i+1}.txt"
old_path = os.path.join(directory, file)
new_path = os.path.join(directory, new_name)
os.rename(old_path, new_path)
実行後のディレクトリ構造は以下のようになります。
- path/to/directory
- 1.txt
- 2.txt
- 3.txt
これで、ディレクトリ内のファイルが1から連番でリネームされました。
まとめ
この記事では、Pythonを使用してディレクトリ内のファイルを1から連番でファイル名を変更する方法について解説しました。ファイルのリネームは、ファイルの整理や管理を効率化するために非常に便利です。
os
モジュールと
shutil
モジュールを使用して簡単に実装することができます。ぜひ、実際に試してみてください。