Pythonでファイルパスから拡張子を取り除く際、Python 3.4以降であればpathlibを使用するのが便利です。以下はその基本的な使用例です。

from pathlib import Path
file_name = Path("/path/to/file.txt").stem
print(file_name)  # 'file'

このstemプロパティはファイル名のみを返し、拡張子を除去します。複数の拡張子がある場合は、.stemは最後の拡張子だけを除去します。

複数の拡張子に対応する方法

複数の拡張子があるファイルでは、with_suffix('')を使用して拡張子を取り除くことができます。

file_name = Path("file.tar.gz").with_suffix('').stem
print(file_name)  # 'file'

これにより、.tar.gzのような複数の拡張子があっても対処可能です。

os.pathを使った方法

Python 3.4未満のバージョンでは、os.path.splitextを使用して拡張子を除去できます。

import os
file_name = os.path.splitext(os.path.basename("/path/to/file.txt"))[0]
print(file_name)  # 'file'

この方法では、拡張子を取り除くためにos.path.splitextを使い、ファイル名のみを取得するためにos.path.basenameを使います。

まとめ

Pythonでファイル名から拡張子を除去するには、pathlibos.pathを使った方法があります。pathlibは特に直感的で便利なため、Python 3.4以降ではこちらが推奨されます。