Python

【Python】ファイル名一括変更|特定文字列のみを変更する方法

Python

はじめに

本記事は、ファイル名一括変更|特定文字列のみを変更する方法について解説します。

具体的には、以下の悩みを解決するための記事です。

特定の文字列のみを一括で変更したい。しかも、ファイルは、複数ある場合も対応可能なこと。

  • 変更前:〇〇_test.tif
  • 変更後:△△_test.tif

解決方法

以下のpyファイル(jupyterの場合はipynbファイル)と同じディレクトリに変更したファイルを格納し、実行することで、一括でリネームすることができます。

Replacement.ipynb

import os
import glob

#ファイル名に含まれる変更したい単語と変更後の単語
before_word = "変更したい単語"
after_word = "変更後の単語"

#カレントディレクトリに含まれるファイルを取得する
files = glob.glob('*'+ before_word +'*')
#print(files)

#before_wordの単語をafter_wordに変更
for before_file_name in files:
    after_file_name = before_file_name.replace(before_word,after_word)
    os.rename(before_file_name,after_file_name)

使用方法詳細

例えば、以下のようにReplacement.ipynbと変更したいファイルを格納します。ここでは武田製薬という単語を塩野義製薬と変更してみましょう。

この場合、コードは、以下のようになります。

import os
import glob

#ファイル名に含まれる変更したい単語と変更後の単語
before_word = "武田製薬"
after_word = "塩野義製薬"

#カレントディレクトリに含まれるファイルを取得する
files = glob.glob('*'+ before_word +'*')
#print(files)

#before_wordの単語をafter_wordに変更
for before_file_name in files:
    after_file_name = before_file_name.replace(before_word,after_word)
    os.rename(before_file_name,after_file_name)

これを変更したいファイル同じディレクトリに格納し、実行します。

実行結果は以下です。

武田製薬が塩野義製薬に変更されていますね。

今回の記事は、以上です。

最後までお読みいただきありがとうございました。

コメント

タイトルとURLをコピーしました