RimMirK
@RimMirK
Вроде человек. Вроде учусь. Вроде пайтону

Как разделить строку по последнему указанному символу?

мне нужно из строки убрать последние символы до \. то-есть из С:\User\Users\...\program.py получить С:\User\Users\...\.
  • Вопрос задан
  • 140 просмотров
Решения вопроса 1
s = r"С:\User\Users\Programs\program.py"
print(s[:s.rindex("\\")+1])


Для получения "чистой" строки, чтобы обратный слэш не использовался как экранирующий символ, использовал r-строку. А уже для поиска последнего индекса методом .rindex() использовал два слэша: один экранирующий, второй видит программа.

Вывод сделал обычным срезом от начала до индекса последнего слэша+1, чтобы путь отображался включая его.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Lepeshka
import os.path
os.path.dirname('С:\\User\\Users\\...\\program.py’)
Ответ написан
Комментировать
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
from pathlib import Path

path_str = r'С:\User\Users\...\program.py'
path_str = path_str.replace('\\', '/')
path_str = Path(path_str)

print(path_str.parent)
print(path_str.name)
print(path_str.suffix)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы