В этом модуле мы погрузимся в тонкости работы со строками в Python. Вы узнаете, как компьютер понимает текст, зачем нужен символ обратного слеша (экранирование) и как управлять переносами строк и табуляцией.
Мы разберем:
1. Как включать кавычки внутрь строки, не ломая код.
2. Что такое спецсимволы: n, t, \.
3. Как работают «сырые» (raw) строки и когда они незаменимы.
4. Как оформлять многострочные тексты.
Эти знания критически важны для работы с путями к файлам, обработки текстов и формирования красивого вывода в консоль. Будьте внимательны к деталям: в строках каждый символ имеет значение!
- Модуль 1: Основы синтаксиса Python
- Модуль 2: Переменные и типы данных
- Модуль 3: Операторы
- Арифметические операторы (+, -, *, /).
- Целочисленное деление и остаток (// и %).
- Возведение в степень (**).
- Операторы сравнения.
- Логические операторы (and, or, not).
- Операторы присваивания (=, +=, -=).
- Операторы принадлежности (in, not in).
- Операторы идентичности (is, is not).
- Битовые операторы.
- Тернарный оператор.
- Модуль 4: Ввод и вывод данных
- Модуль 5: Условные конструкции
- Модуль 6: Циклы
- Модуль 7: Строки
- Модуль 8: Списки
- Модуль 9: Кортежи
- Модуль 10: Словари
- Модуль 11: Множества
- Модуль 12: Функции
- Модуль 13: Встроенные функции
- Модуль 14: Работа с файлами
- Модуль 15: Обработка исключений
- Модуль 16: Модули и пакеты
- Модуль 17: ООП - Основы
- Модуль 18: ООП - Продвинутый уровень
- Модуль 19: Декораторы
- Модуль 20: Генераторы и итераторы
- Модуль 21: Регулярные выражения
- Модуль 22: Дата и время
- Модуль 23: Математические операции
- Модуль 24: Работа с сетью
- Модуль 25: Асинхронное программирование
- Модуль 26: Многопоточность
- Модуль 27: Тестирование
- Модуль 28: Базы данных
- Модуль 29: Алгоритмы и структуры данных
- Модуль 30: Продвинутые возможности
Кавычки внутри кавычек
В Python строку можно создать с помощью одинарных или двойных кавычек. Если внутри строки нужно использовать кавычки того же типа, их необходимо экранировать обратным слешем `\`. Вставьте пропущенные символы, чтобы код работал корректно.
# Вариант 1: Экранирование
quote_1 = 'Itinput1Ss a beautiful day'
# Вариант 2: Использование разных кавычек
quote_2 = input2SIt's a beautiful dayinput3S
print(quote_1)
print(quote_2)Магия спецсимволов
Сопоставьте специальные управляющие последовательности (escape-sequences) с их действием. Помните, что все они начинаются с обратного слеша.
\n\t\\\"Как это будет выглядеть?
Проанализируйте код со спецсимволом переноса строки. Выберите, как именно текст отобразится в консоли.
print("Hello\nWorld")Проблема с путями в Windows
При попытке вывести путь к файлу возникла ошибка или некорректный вывод, потому что Python воспринимает `\n` как перенос строки, а `\t` как табуляцию. Исправьте строку, экранировав обратные слеши.
# Мы хотим вывести: C:\new_folder\table.txtpath = "C:\new_folder\table.txt"print(path)Математика символов
Чему равна длина (`len`) следующей переменной? Введите число. Помните, что экранированная последовательность (например, `\n`) считается за один символ.
s = "12\n3"
print(len(s))Сырые строки (Raw strings)
Иногда экранировать каждый слеш неудобно (например, в регулярных выражениях). Используйте префикс `r`, чтобы создать "сырую" строку, где слеши не обрабатываются как спецсимволы. Заполните пропуски, чтобы вывести путь корректно без удвоения слешей.
# Используем raw-строку для пути
path = input1S"C:\Program Files\app"
print(input2S)Найди ошибки в строках
Распределите примеры кода на две группы: те, что вызовут ошибку синтаксиса (SyntaxError), и те, что написаны верно.
'It\'s OK'"She said "Hello"""Line 1\nLine 2"'Don't do this'r"C:\text""End with \"quote\""Создание многострочного текста
Соберите код, который создает многострочное письмо, используя тройные кавычки, и выводит его. Порядок: создание переменной -> вывод.
letter = """Hello,This is amultiline text."""print(letter)letter = "Hello,letter = 'Hello,Фигурные скобки и f-строки
Как вывести сами фигурные скобки внутри f-строки? Проанализируйте код и выберите верный результат.
x = 10
print(f"Value: {{x}}")Комбинируем знания
Нам нужно вывести строку, которая содержит табуляцию, кавычки и обратный слеш. Заполните пропуски, чтобы получить точный результат.
# Цель: вывести "File" stored in D:\
# (Табуляция, затем слово в кавычках, затем путь)
text = "input1Sinput2SFileinput2S stored in D:input3S"
print(text)