Курс Python → Выражения-генераторы в Python
Выражения-генераторы в Python представляют собой удобный способ создания итерируемых объектов без необходимости сохранения всех значений в памяти. Они позволяют эффективно обрабатывать большие объемы данных, так как элементы вычисляются по требованию.
Одной из особенностей выражений-генераторов является то, что после прохождения по ним они остаются пустыми. Это означает, что после того, как все элементы были извлечены из генератора, его состояние сбрасывается и повторный проход по нему начнется сначала.
Еще одним важным моментом является то, что выражение-генератор может быть бесконечным. Это означает, что оно может продолжать генерировать элементы до бесконечности, что полезно в определенных сценариях, где необходимо работать с потоками данных или генерировать последовательности чисел.
Важно помнить, что к выражениям-генераторам не применимы срезы, так как они не поддерживают произвольный доступ к элементам. Однако из генератора легко можно получить нужную коллекцию, преобразовав его в список или другую структуру данных.
# Пример использования выражения-генератора
gen = (x**2 for x in range(10))
print(list(gen)) # Преобразование генератора в список
В следующей главе мы более подробно рассмотрим способы работы с выражениями-генераторами, их преимущества и ограничения, а также покажем примеры использования в реальных сценариях.
Другие уроки курса "Python"
- Принципы SRP и OCP
- Получение ID текущего процесса
- Обработка ошибки IndexError
- Удаление специальных символов
- Сортировка слиянием
- Разделение строк в Python
- Методы list в Python
- Подписка на Kaspersky Team
- Проверка существования переменной с оператором :=
- Вызов функций по строке в Python.
- Создание namedtuple списком полей
- Транспонирование 2D-массива с помощью zip
- Встроенные функции Python
- Базовые объекты Python
- Генераторы по генератору
- Декораторы в Python
- Основные функции и модули Python
- Логирование с Logzero
- Список переменных в Python
- Метод rmatmul для пользовательских матриц
- Сравнение неупорядоченных списков
- Улучшенные подсказки для импорта в Python 3.12
- Объединение списков в Python.
- Работа с атрибутом dict
- Проверка окончания строки с помощью str.endswith()
- Создание обратного итератора
- Оператор «and» в Python
- Функция zip() — объединение последовательностей
- Анализ кода — Python
- Python: Фильтрация списков с помощью filter()
- Python: отсутствие точек с запятыми
- Копирование списков в Python
- Измерение времени выполнения кода
- Метод is_absolute() для PurePath
- Генераторы в Python
- Преобразование букв в нижний регистр
- Работа с контекстными менеджерами
- Преобразование числа в восьмеричную строку
- Дизассемблирование Python кода
- Основы Python за 14 дней
- Установка и использование модуля Wikipedia















