Курс 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"
- Настройка логгера Logzero
- Протокол управления контекстом
- Работа с аргументами командной строки
- Комментарии в Python
- Метод setdefault() в Python
- Создание вкладок с TKinter
- Класс Counter() для подсчета элементов
- Удаление дубликатов из списка
- Отступы в Python
- Замена текста в Python
- Метод join() с набором
- Удаление элемента из списка
- Codecademy в Telegram
- Использование двоеточия в Python
- Замена текста с re.sub()
- Хешируемые ключи в Python
- Многострочные комментарии в Python
- Управление браузером с Selenium
- Загрузка постов Instagram
- Логические значения в Python
- Аннотации типов в Python
- Непрерывная проверка в Python
- Функции высшего порядка в Python
- Сохранение Unicode в JSON
- Назначение максимального и минимального значения переменной в Python.
- Форматирование строк в Python.
- Удаление элементов из списка в Python
- Пропуск начальных строк с помощью dropwhile()
- Метод pop() списка
- Построение графиков в Matplotlib
- Руководство по библиотеке pydantic
- Объединение словарей в Python
- Форматирование строк с % в Python
- Динамическая типизация в Python
- Логирование с Logzero
- PrettyTable: создание таблицы
- Преобразование range в итератор
- Генераторы в Python
- Изменение элемента списка
- Фильтрация данных в Python.
- Разделение строк методом split()
- Избегание циклических зависимостей классов в Python
- Метод clear для коллекций
- Работа со списками
- Функция zip() в Python















