Экранирование и спецсимволы

Тренажер по Python для пользователей с начальным уровнем подготовки.

Тренажер по Python

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

Мы разберем:
1. Как включать кавычки внутрь строки, не ломая код.
2. Что такое спецсимволы: n, t, \.
3. Как работают «сырые» (raw) строки и когда они незаменимы.
4. Как оформлять многострочные тексты.

Эти знания критически важны для работы с путями к файлам, обработки текстов и формирования красивого вывода в консоль. Будьте внимательны к деталям: в строках каждый символ имеет значение!

Список тем

Кавычки внутри кавычек

id: 39999_task1

В Python строку можно создать с помощью одинарных или двойных кавычек. Если внутри строки нужно использовать кавычки того же типа, их необходимо экранировать обратным слешем `\`. Вставьте пропущенные символы, чтобы код работал корректно.

Заполните пропуски
# Вариант 1: Экранирование
quote_1 = 'Itinput1Ss a beautiful day'

# Вариант 2: Использование разных кавычек
quote_2 = input2SIt's a beautiful dayinput3S

print(quote_1)
print(quote_2)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Магия спецсимволов

id: 39999_task2

Сопоставьте специальные управляющие последовательности (escape-sequences) с их действием. Помните, что все они начинаются с обратного слеша.

Сопоставьте строки в правой части с соответствующими строками в левой по порядковому номеру
Перенос каретки на новую строку
Добавление отступа (табуляция)
Вывод символа обратного слеша (\)
Вывод символа двойной кавычки
\n
\t
\\
\"
Сообщения
Проверить
Показать подсказку

Как это будет выглядеть?

id: 39999_task3

Проанализируйте код со спецсимволом переноса строки. Выберите, как именно текст отобразится в консоли.

Выберите правильный вариант ответа
print("Hello\nWorld")
Сообщения
Проверить
Показать подсказку

Проблема с путями в Windows

id: 39999_task4

При попытке вывести путь к файлу возникла ошибка или некорректный вывод, потому что Python воспринимает `\n` как перенос строки, а `\t` как табуляцию. Исправьте строку, экранировав обратные слеши.

Найдите ошибку и исправьте
# Мы хотим вывести: C:\new_folder\table.txt
path = "C:\new_folder\table.txt"
print(path)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Математика символов

id: 39999_task5

Чему равна длина (`len`) следующей переменной? Введите число. Помните, что экранированная последовательность (например, `\n`) считается за один символ.

Что должно получиться?
s = "12\n3"
print(len(s))
Сообщения
Проверить
Показать подсказку

Сырые строки (Raw strings)

id: 39999_task6

Иногда экранировать каждый слеш неудобно (например, в регулярных выражениях). Используйте префикс `r`, чтобы создать "сырую" строку, где слеши не обрабатываются как спецсимволы. Заполните пропуски, чтобы вывести путь корректно без удвоения слешей.

Нужно правильно расставить в пропуски предложенные варианты
# Используем raw-строку для пути
path = input1S"C:\Program Files\app"
print(input2S)
r
f
path
"path"
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Найди ошибки в строках

id: 39999_task7

Распределите примеры кода на две группы: те, что вызовут ошибку синтаксиса (SyntaxError), и те, что написаны верно.

Перетяните элементы в соответствующие блоки
Корректный код
Ошибка синтаксиса
'It\'s OK'
"She said "Hello""
"Line 1\nLine 2"
'Don't do this'
r"C:\text"
"End with \"quote\""
Сообщения
Проверить
Показать подсказку

Создание многострочного текста

id: 39999_task8

Соберите код, который создает многострочное письмо, используя тройные кавычки, и выводит его. Порядок: создание переменной -> вывод.

Перетяните в правильном порядке строки из одного блока в другой
letter = """Hello,
This is a
multiline text."""
print(letter)
letter = "Hello,
letter = 'Hello,
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Фигурные скобки и f-строки

id: 39999_task9

Как вывести сами фигурные скобки внутри f-строки? Проанализируйте код и выберите верный результат.

Выберите правильный вариант ответа
x = 10
print(f"Value: {{x}}")
Сообщения
Проверить
Показать подсказку

Комбинируем знания

id: 39999_task10

Нам нужно вывести строку, которая содержит табуляцию, кавычки и обратный слеш. Заполните пропуски, чтобы получить точный результат.

Заполните пропуски
# Цель: вывести     "File" stored in D:\
# (Табуляция, затем слово в кавычках, затем путь)

text = "input1Sinput2SFileinput2S stored in D:input3S"
print(text)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку
НайтиКурс.Ру