Курс Python → Генераторы в Python
Генераторные функции — это мощный инструмент в Python, который позволяет создавать итераторы с минимальным использованием памяти. Вместо того чтобы создавать список или кортеж сразу со всеми значениями, генераторная функция генерирует значения по мере необходимости. Это особенно полезно, когда у вас есть большой объем данных, которые необходимо обработать поэлементно.
Для создания генераторной функции в Python используется ключевое слово yield. Когда интерпретатор Python встречает оператор yield в функции, он приостанавливает выполнение функции и возвращает значение. При следующем вызове функции выполнение продолжается с того же места, где оно было приостановлено, и продолжается до следующего оператора yield.
def my_generator():
for i in range(5):
yield i
gen = my_generator()
for value in gen:
print(value)
В этом примере функция my_generator является генераторной функцией, которая возвращает числа от 0 до 4. При вызове функции my_generator() создается объект-генератор, который можно использовать в цикле for для обхода всех значений, сгенерированных функцией.
Использование генераторных функций особенно полезно в случаях, когда необходимо применить серию фильтров или обработчиков к элементам списка. Вместо того чтобы создавать промежуточные списки с отфильтрованными значениями, можно использовать генераторы для ленивой обработки данных, что позволяет сэкономить память и улучшить производительность.
Другие уроки курса "Python"
- Пространство имен в Python
- Контекстный менеджер в Python
- Обезопасьте ввод данных
- Оператор «and» в Python
- Работа со строками в Python
- Оператор «not» в Python
- Возврат нескольких значений
- Каналы Senior: Python, Java, Frontend, SQL, C++
- Декораторы в Python
- Операции с комплексными числами
- Работа с модулем random
- Копирование словарей и списков в Python
- Печать календаря
- Lambda Functions in Python
- Потоковый ввод в Python
- Модуль Antigravity в Python 3
- Сокращение ссылок с pyshorteners
- Работа с Telegram API на Python
- Concrete Paths в Python
- Python Calendar Usage
- Приближение чисел в Python
- Объединение списков в Python.
- Установка максимального количества цифр
- Объединение списков с помощью zip
- Метод __call__ в Python
- Работа с NumPy.linalg
- Создание детектора плагиата
- Списковые включения в Python
- Поиск с библиотекой Google
- Удаление дубликатов в pandas
- Безопасный доступ к значениям словаря
- Управление ресурсами в Python
- Управление User-Agent в Python
- Атрибуты объекта в Python
- Работа с Path в Python
- Многопоточность в Python
- Декоратор @override
- Работа с f-строками 2.0
- Преобразование в float
- Retrying в Python: повторные вызовы
- Python reversed() функция
- Удаление ресурса в Python
- Логирование с Loguru
- Мониторинг работы программы Py-spy
- Получение атрибутов и методов класса















