Курс Python → Генераторы данных
Выражения-генераторы в Python представляют собой компактный и эффективный способ создания итераторов. Они позволяют генерировать элементы последовательности по требованию, что позволяет экономить память и улучшить производительность программы. Для создания выражения-генератора используется синтаксис, аналогичный списковым включениям, но вместо квадратных скобок используются круглые скобки.
gen = (x**2 for x in range(10))
В данном примере создается выражение-генератор, которое генерирует квадраты чисел от 0 до 9. При этом элементы не хранятся в памяти, а выдаются по одному при обращении к итератору. Это делает выражения-генераторы особенно полезными при работе с большими объемами данных или при необходимости обработки элементов последовательности по мере их поступления.
Выражения-генераторы могут быть использованы в различных контекстах, например, при фильтрации или преобразовании данных. Они позволяют написать более компактный и читаемый код, чем использование циклов и условий. Кроме того, выражения-генераторы могут быть вложенными, что позволяет создавать сложные структуры данных с минимальными усилиями.
filtered_gen = (x for x in gen if x % 2 == 0)
В этом примере создается новое выражение-генератор, которое фильтрует только четные элементы из предыдущего выражения-генератора. Таким образом, можно последовательно применять различные операции к данным, не создавая промежуточные списки или кортежи. Использование выражений-генераторов способствует написанию более эффективного и чистого кода в Python.
Другие уроки курса "Python"
- Проекты на Python
- Форматирование данных с помощью pprint
- Получение срезов итераторов
- Счетчик ссылок в Python
- Отслеживание выполнения программы с библиотекой tqdm
- Извлечение новостей с newspaper3k
- Разделение строки в Python
- Логирование с Logzero
- Ускорение выполнения кода в Python
- Доступ к локальным переменным
- Применение функции к списку
- Документация функции help() в Python
- Асинхронное выполнение задач в Python
- Поиск индекса элемента
- Установка максимального количества цифр
- Комплексные числа в Python
- Хеши в Python
- Метод rrshift для пользовательских объектов
- Замена символов в строке
- F-строки в Python 3.8
- Генераторы в Python
- Добавление элементов в список
- Изменение переменной в Python: nonlocal
- Освобождение памяти в Python
- Оператор continue в Python
- Сложение матриц в NumPy
- ChainMap избыточные ключи
- Настройка логгера Logzero
- Метод rxor для операции побитового исключающего «или»
- Удаление эмодзи с помощью pandas
- Удаление дубликатов в pandas
- Быстрый поиск кода
- Форматирование строк в Python
- Разделение строки на подстроки в Python
- Регулярные выражения: метод match
- Генерация фальшивых данных с Faker
- Работа со слайсами
- Изменение регистра данных
- Оператор * в Python
- Экспорт данных с помощью writefile
- Переопределение метода __and__
- Списки: объединение, изменение
- Список переменных в Python















