1. Как задать значение для символьной строки? Рассмотрите разные способы.
Значение символьной строки можно задать разными способами. В Python строки можно записывать в одинарных или двойных кавычках: s = 'Привет' или s = "Привет". Также можно использовать тройные кавычки для многострочного текста: s = """Много\nстрок""".
2. Почему нельзя сразу записать новое значение в заданную позицию строки? Как можно решить эту задачу?
Нельзя сразу записать новое значение в заданную позицию строки, потому что строки неизменяемы (immutable). Чтобы изменить символ, можно создать новую строку, например: s = s[:3] + 'X' + s[4:].
3. Что обозначает оператор + применительно к строкам?
Оператор + для строк выполняет конкатенацию (объединение): "Привет" + " мир" даст "Привет мир".
4. Перечислите основные операции со строками и приведите примеры их использования.
Основные операции со строками включают конкатенацию (+), дублирование (*), получение длины (len(s)), извлечение символов (s[i]), срезы (s[start:end]), поиск (s.find('подстрока')), замены (s.replace('старое', 'новое')).
5. Как определить, что при поиске в строке образец не найден?
Если при поиске образец не найден, методы find и index возвращают -1 или вызывают ошибку (index).
6. Как преобразовать число из символьного вида в числовой и обратно?
Число из символьного вида в числовой преобразуется функциями int(s), float(s), а обратно – str(n).
7. Почему строку не всегда можно преобразовать в число?
Строку нельзя всегда преобразовать в число, если она содержит буквы или символы, не относящиеся к числу ("12abc", "3.14.15").
8. Объясните выражение «рекурсивный перебор».
Рекурсивный перебор – метод решения задач, в котором функция вызывает саму себя, уменьшая сложность задачи (например, рекурсивный обход дерева).
9. Сравните рекурсивные и нерекурсивные методы решения переборных задач.
Рекурсивные методы удобны при работе со структурированными данными, но требуют больше памяти из-за хранения стековых вызовов. Нерекурсивные методы, основанные на циклах, эффективнее по памяти, но могут быть сложнее в реализации.