В этом посте мы обсудим, как получить имя файла без расширения по указанному пути в Python.
1. Использование os.path.splitext()
функция
Стандартным решением является использование os.path.splitext(path)
function to split a path into a (root, ext) pair such that root + ext == path. This returns the path to the file without extension. If the file has multiple periods, leading periods are ignored.
1 2 3 4 5 |
import os dir = '/path/to/some/file.txt' print(os.path.splitext(dir)[0]) # /путь/к/кому-то/ |
2. Использование str.rsplit()
функция
В качестве альтернативы вы можете использовать str.rsplit()
функция разделения на последний период.
1 2 3 |
dir = '/path/to/some/file.txt' print(dir.rsplit('.', 1)[0]) # /путь/к/кому-то/ |
3. Использование pathlib.Path.stem()
функция
Если вам не нужен полный путь, вы можете использовать pathlib
модуль в Python 3.4+. Вы можете использовать его stem
свойство, которое возвращает имя файла без его расширения:
1 2 3 4 5 |
from pathlib import Path dir = '/path/to/some/file.txt' print(Path(dir).stem) # /путь/к/кому-то/ |
Вот и все, что нужно для получения имени файла без расширения в Python.