Pythonでは、ファイル名と拡張子を分割するために os.path.splitext()
関数を使用することができます。この関数は、パスまたはファイル名を入力として受け取り、ファイル名と拡張子を含むタプルを返します。
以下にその使用例を示します。
import os
filename, file_extension = os.path.splitext('/path/to/somefile.ext')
print(filename) # '/path/to/somefile'
print(file_extension) # '.ext'
この関数は、ほとんどの手動での文字列分割試みとは異なり、/a/b.c/d
を拡張子がないと正しく扱い、.c/d
を拡張子として扱うことはありません。また、.bashrc
を拡張子が .bashrc
であるとは扱わず、拡張子がないと扱います。
print(os.path.splitext('/a/b.c/d')) # ('/a/b.c/d', '')
print(os.path.splitext('.bashrc')) # ('.bashrc', '')
Python 3.4以降では、pathlib
モジュールを使用してファイルの拡張子を取得することもできます。
import pathlib
print(pathlib.Path('yourPath.example').suffix) # '.example'
print(pathlib.Path('hello/foo.bar.tar.gz').suffixes) # ['.bar', '.tar', '.gz']
print(pathlib.Path('/foo/bar.txt').stem) # 'bar'
これらの方法を使用すれば、Pythonで簡単にファイル名と拡張子を分割することができます。適切な方法を選んで、コード内で使用してみてください。.