Курс Python → Генераторы в Python
Генераторы в Python — это специальный тип функций, которые вместо ключевого слова return используют ключевое слово yield. Когда функция с ключевым словом yield вызывается, она возвращает объект-генератор, который можно использовать для итерации по последовательности значений, возвращаемых функцией.
Первый способ создания генератора — это использование генераторных выражений. Генераторное выражение похоже на списковое включение, но вместо квадратных скобок используются круглые скобки. Например, можно создать генератор, который будет возвращать квадраты чисел от 1 до 10 следующим образом:
gen = (x**2 for x in range(1, 11))
for num in gen:
print(num)
Второй способ создания генератора — это создание функции, которая содержит ключевое слово yield. Например, можно создать генератор, который будет возвращать числа Фибоначчи:
def fibonacci():
a, b = 0, 1
while True:
yield a
a, b = b, a + b
fib_gen = fibonacci()
for num in fib_gen:
if num > 1000:
break
print(num)
Генераторы в Python могут быть очень полезны для работы с большими объемами данных, так как они позволяют эффективно обрабатывать элементы последовательностей без необходимости хранить все значения в памяти. Использование генераторов помогает сэкономить память и ускорить выполнение программы.
Другие уроки курса "Python"
- Экранирование символов в Python
- Функции классификации комплексных чисел
- Измерение времени выполнения кода с помощью time
- Распаковка значений в Python
- Применение функции map() с лямбда-функциями
- Изменение IP-адреса в Python
- Объединение, распаковка и деструктуризация
- История Python
- Оптимизация сравнения в Python
- Управление памятью в numpy.
- Область видимости переменных
- Оператор zip в Python
- Обработка исключений с блоком else
- Удаление специальных символов
- Сравнение def и lambda-функций
- Создание графиков в терминале
- Проверка подстроки в строке с помощью in
- Настройка Cron
- Структуры данных в Python
- Метод __ixor__ для побитового исключающего ИЛИ
- Проверка типа объекта в Python
- Проверка на истинность объектов в Python
- Операции с числами в Python
- Функция count() в Python
- Лямбда-функции в Python
- Модуль xkcd: добавление юмора в Python
- Работа с файловой системой в Python
- Декораторы в Python
- Перевод эмодзи и эмотиконов.
- Функции map() и reduce() в Python
- Глобальные переменные в Python
- Numpy: объединение массивов
- Декоратор @override
- Изучение объектов с помощью dir()
- Использование функции product
- Преобразование текста в речь с Python
- Возврат нескольких значений
- Метод округления чисел
- Генераторы в Python
- Извлечение аудио из видео
- Поиск подстроки в строке
- Отправка POST запроса на сервер.
- Добавление цвета в консоли
- Создание словарей с defaultdict()
- Создание словарей в Python
- Подсчет элементов в Python















