この記事では、Pythonでのファイル名の拡張子の分割、変更、削除等の方法【一括処理方法も】について解説しています。
ファイル名の拡張子の分割・削除・変更には
をうまく使うといいです。
詳細を見ていきましょう(^^)/
Pythonにてファイルの拡張子を取り除く方法【os.path.splittext関数】
上述のようにPythonでのファイルの拡張子を削除するには、os.path.splittext関数を使いましょう。
具体的なコードは以下の通り。
import os
filename = "example.txt"
bunkatsu_name = os.path.splitext(filename)[0]
print(bunkatsu_name) # この例では "example" と表示されます。
このコードは os.path.splitext 関数を使用して、ファイル名とその拡張子をタプルとして返します。
最初の要素(ここではexample)がファイル名のみで、拡張子(.txt)が取り除かれたものになります。
実際の実行画面(jupyternotebook)は以下の通り。
Pythonにてファイルの拡張子を削除し変更する方法【.jpg】
上の流れから、今度はファイルの拡張子を.txtから.jpgに変換してみましょう(あまりないケースかもですが笑)。
単純に、
・ファイル名と拡張子を分割
・新しい拡張子をつける
と処理すればOKです。
new_extension = ".jpg"
new_filename = os.path.splitext(filename)[0] + new_extension
print(new_filename) # この例では "example.jpg" と表示されます。
このコードは、最初にファイル名から拡張子を取り除き、新しい拡張子を追加します。
Pythonにてフォルダ内の全てのファイルで拡張子を一括で取り除く方法【for】
さらには、フォルダ内におけるすべてのファイルの拡張子の削除も行ってみましょう。
for文を使うといいです。
以下ではC直下にあるrenshuuディレクトリ内のファイルすべての拡張子を削除していきます。
os.listdir関数にて、フォルダ内のすべてのファイルを読み込んでます。
folder_path = 'C://renshuu'
for file_name in os.listdir(folder_path):
bunkatsu_name = os.path.splitext(file_name)[0]
print(bunkatsu_name)
このコードは、指定したフォルダ内のすべてのファイルの拡張子を取り除きます。
各ファイル名は、拡張子が削除された状態で出力されます。実際のrenshuuフォルダの中身と一致していることを確認しています。
フォルダ内の全てのファイルで拡張子を一括変更する方法
フォルダ内のすべてのファイルの拡張子を一気に変換するには、上の各コードを組み合わせればOKですね。
new_folder_extension = ".jpg"
for file_name in os.listdir(folder_path):
new_file_name = os.path.splitext(file_name)[0] + new_folder_extension
print(new_file_name)
このコードは、指定したフォルダ内のすべてのファイルの拡張子を新しい拡張子に置き換えます。
各ファイル名は、新しい拡張子が付加された状態で出力されます。
まとめ ファイル名の拡張子の変更、削除等の方法【一括処理方法も】
この記事では、ファイル名の拡張子の分割、変更、削除等の方法【一括処理方法も】について解説しました。
Pythonの扱いに慣れ、さらに効率よく生活していきましょう(^^)/
コメント