Python
では、OSに依存せずにパスからファイル名を抽出するために、os.path.basename()
やpathlib
を使用できます。
os.path.basename()
を使用する
import os
filename = os.path.basename('/path/to/file.txt')
print(filename) # 出力: file.txt
この方法はクロスプラットフォームで動作し、ファイル名を正確に抽出できます。
pathlib
を使う
Python
3.4以降では、pathlib.Path
も使用可能です。
from pathlib import Path
filename = Path('/path/to/file.txt').name
print(filename) # 出力: file.txt
拡張子を除く方法
拡張子を除いたファイル名が必要な場合は、os.path.splitext()
またはPath().stem
を使用します。
# os.path.splitext() の例
file_stem = os.path.splitext(filename)[0]
print(file_stem) # 出力: file
# Path().stem の例
file_stem = Path('/path/to/file.txt').stem
print(file_stem) # 出力: file
まとめ
os.path.basename()
とpathlib
の両方を使うことで、OSに依存しないパス操作が可能です。- 拡張子を除いたファイル名が必要な場合には、
splitext()
やstem
を使用します。