Курс Python → Выражения-генераторы в Python
Выражения-генераторы в Python представляют собой удобный способ создания итерируемых объектов без необходимости сохранения всех значений в памяти. Они позволяют эффективно обрабатывать большие объемы данных, так как элементы вычисляются по требованию.
Одной из особенностей выражений-генераторов является то, что после прохождения по ним они остаются пустыми. Это означает, что после того, как все элементы были извлечены из генератора, его состояние сбрасывается и повторный проход по нему начнется сначала.
Еще одним важным моментом является то, что выражение-генератор может быть бесконечным. Это означает, что оно может продолжать генерировать элементы до бесконечности, что полезно в определенных сценариях, где необходимо работать с потоками данных или генерировать последовательности чисел.
Важно помнить, что к выражениям-генераторам не применимы срезы, так как они не поддерживают произвольный доступ к элементам. Однако из генератора легко можно получить нужную коллекцию, преобразовав его в список или другую структуру данных.
# Пример использования выражения-генератора
gen = (x**2 for x in range(10))
print(list(gen)) # Преобразование генератора в список
В следующей главе мы более подробно рассмотрим способы работы с выражениями-генераторами, их преимущества и ограничения, а также покажем примеры использования в реальных сценариях.
Другие уроки курса "Python"
- Парсинг статей с Newspaper3k
- JSON в Python: модуль, dump, dumps, load
- Асинхронное выполнение задач в Python
- Лямбда-функции в Python
- Оператор is в Python
- Работа с необработанными строками
- Создание объекта времени
- Сериализация данных в JSON с помощью json.dumps
- Измерение времени выполнения кода
- Метод Enumerate() для списков
- Переопределение метода len
- Функции классификации комплексных чисел
- Декораторы с аргументами в Python
- Python: цикл for и оператор присваивания
- Асинхронное программирование с asyncio
- Перемешивание списка с shuffle()
- Генераторы списков
- Профилирование кода
- Генераторные функции в Python
- Форматирование строк в Python
- Контроль точности вывода чисел
- Функция enumerate() в Python
- Декоратор @override
- Удаление элементов во время итерации
- Работа с файлами в Python
- discard() — удаление элемента из множества
- Оператор space-invader
- Создание файла с проверкой ошибки
- Отображение графиков в Jupyter с Matplotlib
- Использование *args
- Метод __int__ в Python
- Создание именованных кортежей в Python
- Подсчет элементов в Python
- Flask: создание веб-приложений
- Управление асинхронными задачами на Python.
- Форматирование строк в Python
- Бинарный поиск
- Глобальные переменные в Python
- Заказ карты Тинькофф Black
- Декораторы в Python
- ChainMap.new_child() — добавление нового словаря
- Область видимости переменных
- Объединение словарей в Python
- Нахождение пересечения множеств
- Обмен значений переменных в Python















