Задать вопрос
@vilgeforce
Раздолбай и программист

Как правильно сделать экранирование кавычек для exec() в python?

Не могу понять как правильно экранировать кавычки для использования в exec().
Есть выражение print "123", дабы выполнить его через exec произвожу замену кавычки на \" и все работает: exec("print \"123\"")
Но для выражения print "\\" замена не работает: exec("print \"\\\"") выдает ошибку.
Я чего-то не вижу или не все так просто? Как корректно преобразовывать строки, чтобы они выполнялись через exec?
  • Вопрос задан
  • 6231 просмотр
Подписаться 3 Оценить 4 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Skillbox
    Python-разработчик
    10 месяцев
    Далее
  • ProductStar
    Профессия: Python-разработчик
    8 месяцев
    Далее
Решения вопроса 1
@vilgeforce Автор вопроса
Раздолбай и программист
Это я дурак: слэши тоже надо на двойные менять, exec("print \"\\\\\"") работает
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
bobrovskyserg
@bobrovskyserg
4 вида строковых делимитеров решают проблемы большинства питонистов.
Но, видимо, есть исключения )))
Ответ написан
Ваш ответ на вопрос

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

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