⚡ Кратко
- Генератор чисел, кратных 5.
- Генератор квадратов от 1 до n.
- Бесконечный генератор Фибоначчи.
Задание 1. Фильтр чисел
Создайте генератор, который принимает список чисел и выдаёт только числа, кратные 5.
numbers = [12, 15, 33, 40, 55, 62, 75, 83, 90]
Задание 2. Квадраты чисел
Создайте генератор, который принимает число n и генерирует квадраты чисел от 1 до n включительно.
Задание 3. Бесконечный генератор Фибоначчи
Создайте генератор fibonacci(), который бесконечно генерирует числа Фибоначчи. Выведите первые 10.
Задание 4. Генератор уникальных элементов
Создайте генератор, который принимает список и выдаёт только уникальные значения, сохраняя порядок появления.
data = [3, 1, 2, 3, 4, 1, 5, 2, 6, 7, 5, 8]
Задание 5. yield from
Напишите функцию flatten(data), которая «раскрывает» вложенные списки любой глубины, используя yield from.
Проверка понимания
Выберите один вариант ответа. После клика правильный ответ подсветится зелёным.
Вопрос 1
Что такое декоратор?
Вопрос 2
Что делает yield?
Вопрос 3
Какой стиль имён переменных обычно рекомендует PEP 8?
Вопрос 4
Зачем использовать f-strings в современном Python?
Вопрос 5
Когда полезен ранний возврат из функции?
Вопрос 6
Что делает аннотация типа в Python?
Вопрос 7
Как лучше обрабатывать ожидаемую ошибку преобразования?