Курс Python → Работа с необработанными строками
При работе с строками в Python, особенно в необработанных строковых литералах, важно помнить о том, как обрабатываются обратные косые черты. В необработанном строковом литерале, обозначаемом префиксом r, обратная косая черта передается как есть вместе с экранированием следующего символа. Это означает, что когда анализатор Python встречает обратную косую черту в необработанной строке, он ожидает следующего символа, который будет экранирован.
Например, если мы напишем print(r"\"), обратная косая черта будет экранировать завершающую кавычку, что приведет к ошибке SyntaxError, так как анализатор ожидает завершающую кавычку. Поэтому обратная косая черта не может быть использована в конце необработанной строки, так как она не будет интерпретирована корректно.
Для избежания подобных ошибок, важно либо экранировать обратную косую черту в необработанной строке, либо использовать двойные кавычки вместо одинарных. Например, можно написать print(r"\\"), чтобы вывести одну обратную косую черту, или print(r"\""), чтобы вывести кавычку в необработанной строке.
Также стоит помнить, что в Python можно использовать методы форматирования строк, такие как f-строки или метод format(), чтобы вставлять переменные в строки без необходимости экранирования символов. Например, можно написать name = "Alice" print(f"Hello, {name}"), чтобы вывести приветствие с именем переменной name.
Использование необработанных строковых литералов в Python может быть удобным способом работы со строками, но важно помнить правила экранирования символов, чтобы избежать ошибок и непредвиденного поведения программы.
Другие уроки курса "Python"
- Инверсия списка и строки
- Подсчет элементов в списке с Counter
- Глубокое копирование объектов
- Измерение времени выполнения кода
- Оператор «моржа» (Walrus Operator)
- Модуль subprocess: запуск внешних команд
- Избегайте изменяемых аргументов
- Форматирование данных с помощью pprint
- Подсказки типов в Python
- Вставка переменных в шаблоны Flask
- Методы shutil для работы с файлами
- Именованные кортежи в Python
- Срезы в Numpy
- Объединение, распаковка и деструктуризация
- Работа с zip-архивами в Python
- Работа с deque из collections
- Вывод сложных структур данных с помощью pprint
- Работа с модулем glob в Python
- Переопределение метода __lshift__
- Список переменных с %who
- Работа с NumPy массивами
- Контроль точности вывода чисел
- История Python
- Объединение итераторов
- Нарезка списков в Python
- Моржовый оператор в Python 3.8
- Проверка типов с помощью isinstance
- Управление импортом в Python
- Изменение списка срезами
- Метод count() для списка
- Списковое включение в Python
- Принципы LSP и ISP в Python
- Enum в Python: создание и использование перечислений
- Генерация тестовых данных с factory_boy
- Создание множества в Python
- Ускорение кода с помощью векторизации
- Создание генераторов
- Декораторы в Python
- Импорт объектов из модулей
- Переименование файлов в Python
- Декораторы в Python
- Разделение строки на пары ключ-значение.
- Функции any() и all() в Python
- Перезагрузка оператора в Python















