Python имя файла из пути с \ - PullRequest
       2

Python имя файла из пути с \

0 голосов
/ 06 августа 2020

У меня есть список путей, который выглядит примерно так C:/Users/myuser/Documents/files\my_file_1.csv, и я хочу получить имя файла, выполнив следующие действия:

path=['C:/Users/myuser/Documents/files\my_file_1.csv','C:/Users/myuser/Documents/files\my_file_2.csv',...]

filename, file_extension = os.path.splitext(path[0])

, и я всегда получаю 'C:/Users/myuser/Documents/files\my_file_1' Я знаю, что это должно быть для '\' sla sh, но я не смог его заменить. Может кто-нибудь подскажет?

Ответы [ 2 ]

5 голосов
/ 06 августа 2020

Вы можете использовать os.path.basename, чтобы получить только имя файла без полного каталога, а затем os.path.splitext, чтобы удалить расширение файла.

>>> import os
>>> [os.path.splitext(os.path.basename(i))[0] for i in path]
['my_file_1', 'my_file_2']

Или, если вам нужно имя файла и расширение, но без каталогов

>>> [os.path.basename(i) for i in path]
['my_file_1.csv', 'my_file_2.csv']
0 голосов
/ 06 августа 2020

Как вы используете windows и если вы используете python 3.4 +

>>> from pathlib import PureWindowsPath
>>> path=['C:/Users/myuser/Documents/files\my_file_1.csv','C:/Users/myuser/Documents/files\my_file_2.csv']
>>> print([PureWindowsPath(i).name for i in path])
['my_file_1.csv', 'my_file_2.csv']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...