如何从Python中的路径中获取没有扩展名的文件名?

2022-09-05 00:56:04

如何从Python中的路径中获取没有扩展名的文件名?

"/path/to/some/file.txt"  →  "file"

答案 1

获取不带扩展名的文件的名称:

import os
print(os.path.splitext("/path/to/some/file.txt")[0])

指纹:

/path/to/some/file

documentation for os.path.splitext.

重要提示:如果文件名有多个点,则仅删除最后一个点之后的扩展名。例如:

import os
print(os.path.splitext("/path/to/some/file.txt.zip.asc")[0])

指纹:

/path/to/some/file.txt.zip

如果您需要处理这种情况,请参阅下面的其他答案。


答案 2

在 Python 3.4+ 中使用 pathlib 中的 .stem

from pathlib import Path

Path('/root/dir/sub/file.ext').stem

会再来

'file'

请注意,如果您的文件有多个扩展名,则只会删除最后一个扩展名。例如,将返回 。.stemPath('file.tar.gz').stem'file.tar'