🏃 Блок 1: предикатные методы
Вопрос 1.1. Какой результат выведет следующий код?
text = "Python3"
print(text.isalpha())
- a.
True - b.
False - c. Ошибка
- d.
None
Ответ: b — строка содержит цифру 3, поэтому isalpha() возвращает False.
Вопрос 1.2. Какой результат выведет следующий код?
text = "Hello World"
print(text.istitle())
- a.
True - b.
False - c. Ошибка
- d.
None
Ответ: a — оба слова начинаются с заглавной буквы.
🏋️ Блок 2: поиск и подсчёт
Вопрос 2.1. Какой результат выведет следующий код?
text = "Python is awesome. Python is dynamic."
print(text.find("is"))
- a. 23
- b. 7
- c. 8
- d. -1
Ответ: b — первое вхождение подстроки "is" начинается с индекса 7.
Вопрос 2.2. Какой результат выведет следующий код?
text = "33333"
print(text.count("33"))
- a. 1
- b. 2
- c. 3
- d. 5
Ответ: b — метод ищет непересекающиеся вхождения: 33|333 → 33 и 33.
🏋️ Раздел тренировки
В этом разделе вы пошагово выполните практические задания из занятия.
replace(), isdigit(), split(), join(), count() и цикл for.
📂 Подготовка проекта
- Создайте папку урока внутри
python-fundamentals-practice/lesson-20/. - Активируйте виртуальное окружение.
- Создайте файлы
task_01_stars.py,task_02_char_count.pyиtask_03_multiply_numbers.py.
Задание 1. Звёздочки вместо чисел
Условие: напишите программу, которая заменяет все цифры в строке на звёздочки *.
text = "My number is 123-456-789"
Пример вывода:
Строка: My number is 123-456-789
Результат: My number is ***-***-***
Подсказка: переберите символы строки циклом. Если символ — цифра, добавьте *, иначе — сам символ.
Задание 2. Количество символов
Условие: напишите программу, которая подсчитывает количество вхождений всех символов в строке. Нужно вывести только символы, которые встречаются более 1 раза (игнорируя регистр), с указанием их количества. Выводите повторяющиеся символы только один раз.
text = "Programming in python"
Пример вывода:
Строка: Programming in python
Символ 'p' встречается 2 раз(а)
Символ 'r' встречается 2 раз(а)
Символ 'o' встречается 2 раз(а)
Символ 'g' встречается 2 раз(а)
Символ 'm' встречается 2 раз(а)
Символ 'i' встречается 2 раз(а)
Символ 'n' встречается 3 раз(а)
Символ ' ' встречается 2 раз(а)
Подсказка: приведите строку к нижнему регистру, накапливайте уже выведенные символы и используйте count().
Задание 3. Увеличение чисел
Условие: напишите программу, которая заменяет все числа в строке на их эквивалент, умноженный на 10.
text = "I have 5 apples and 10 oranges, price is 0.5 each. Card number is ....3672."
Пример вывода:
I have 50.0 apples and 100.0 oranges, price is 5.0 each. Card number is ....3672.
Подсказка: разбейте строку на слова, проверьте, является ли слово числом, умножьте его на 10 и соберите строку обратно через join(). Обратите внимание: "....3672" не является числом, поэтому остаётся без изменений.