📝 Практические задания

⚡ Задания в двух словах

  • Задание 1 — проверить, является ли строка палиндромом.
  • Задание 2 — расшифровать текст шифра Цезаря.
  • Задание 3 — подсчитать вхождения символа в строке.
  • Задание 4 — проверить, что строка состоит только из цифр.
  • Задание 5 — развернуть строку и вывести каждый второй символ.

🏋️ Раздел тренировки

В этом разделе вы пошагово выполните практические задания: от создания файла до рабочей программы в VS Code.

Цель тренировки: закрепить индексацию, срезы, строковые методы, циклы и работу с Unicode.

📂 Подготовка проекта

  1. Создайте папку урока внутри python-fundamentals-practice/lesson-14/.
  2. Активируйте виртуальное окружение.
  3. Создайте файл для каждого задания, например task_01_palindrome.py.

Задание 1. Палиндром

Условие: напишите программу, которая запрашивает у пользователя строку и проверяет, является ли она палиндромом. Палиндром читается одинаково слева направо и справа налево.

Что должно получиться:

Введите строку: radar
Строка является палиндромом

Введите строку: hello
Строка не является палиндромом

Подсказка: сравните строку с её перевёрнутой версией text[::-1].

Задание 2. Шифр Цезаря

Условие: напишите программу для дешифровки текста, зашифрованного шифром Цезаря. Программа принимает зашифрованный текст и сдвиг, использованный для зашифровки, и выводит расшифрованный текст.

Что должно получиться:

Введите зашифрованный текст: khoor
Введите сдвиг: 3
Расшифрованный текст: hello

Подсказка: преобразуйте каждый символ в код Unicode с помощью ord(), вычтите сдвиг и верните символ через chr().

Задание 3. Подсчёт символа

Условие: напишите программу, которая принимает строку и символ, а затем подсчитывает, сколько раз символ встречается в строке.

Что должно получиться:

Введите строку: Hello, world!
Введите символ: o
Символ o встречается 2 раз(а).

Подсказка: используйте цикл for и счётчик, либо метод count().

Задание 4. Строка из цифр

Условие: напишите программу, которая запрашивает строку и сообщает, состоит ли она только из цифр.

Что должно получиться:

Введите строку: 12345
Строка состоит только из цифр: True

Введите строку: 12a45
Строка состоит только из цифр: False

Подсказка: используйте строковый метод isdigit().

Задание 5. Развёрнутая строка через один символ

Условие: напишите программу, которая запрашивает строку и выводит её в обратном порядке, оставляя только каждый второй символ.

Что должно получиться:

Введите строку: Python
Результат: nhy

Подсказка: используйте срез с отрицательным шагом и шагом по модулю: text[::-2].

Проверка понимания

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

Вопрос 1

Почему f-string часто удобнее конкатенации?

Вопрос 2

Какой метод убирает пробелы по краям строки?

Вопрос 3

Какой стиль имён переменных обычно рекомендует PEP 8?

Вопрос 4

Зачем использовать f-strings в современном Python?

Вопрос 5

Когда полезен ранний возврат из функции?

Вопрос 6

Что делает аннотация типа в Python?

Вопрос 7

Как лучше обрабатывать ожидаемую ошибку преобразования?