@firstmixon

Как работать со строками в питоне?

День добрый, хочу записать путь к файлу и сохранить его в БД(условный пример)

def zzz(file_name = "")
       return = "c:\\tmp\\"+"file_name"

    full_path = zzz("test.txt") <- тут я ожидаю 'c:\tmp\test1.txt', но по факту получаю строку с двойными '\', то есть как есть и в базу далее у нас уйдет строка в таком виде, мне что всюду в питоне при отправке строки на сторону вызывать .__str__()?
  • Вопрос задан
  • 85 просмотров
Решения вопроса 1
@Everything_is_bad
1. С путями надо работать через модуль pathlib.
2. Открой доки и прочитай про экранирование символов в строках, чтобы раз и навсегда разобраться в этом моменте, пока больше похоже на то что ты выдумал себе проблему.
3. Зачем тут = после return, и почему file_name в кавычках?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@galaxy
>>> zzz("test.txt")
'c:\\tmp\\file_name'
>>> print(zzz("test.txt"))
c:\tmp\file_name
>>>


В консоль в первом случае выводится результат repr() от строки. Там слеши экранированы, чтобы это можно было копировать и сразу вставить в код. В самой строке слеши не дублируются.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы