Курс Python → Выражения-генераторы в Python
Выражения-генераторы в Python представляют собой синтаксис, похожий на синтаксис представления списка (list comprehension), который позволяет создать объект-генератор. Генераторы представляют собой специальный тип итератора, который генерирует значения по требованию, что позволяет экономить память и увеличивает производительность.
Для создания выражения-генератора используется круглые скобки вместо квадратных скобок, как при создании списка. Например, чтобы создать генератор, который фильтрует пустые строки из файла и удаляет символ перехода на новую строку в конце (\n), можно использовать следующий синтаксис:
gen = (line.strip() for line in open('file.txt') if line.strip() != '')
В данном примере создается генератор, который читает строки из файла ‘file.txt’, удаляет символы переноса строки и фильтрует пустые строки. При этом значения генерируются по требованию и не хранятся все сразу в памяти, что уменьшает потребление ресурсов.
Использование выражений-генераторов позволяет компактно и эффективно обрабатывать данные, особенно при работе с большими объемами информации. Они являются важным инструментом в Python для работы с итерируемыми объектами и обеспечивают удобство и эффективность при написании кода.
Таким образом, выражения-генераторы представляют собой мощный инструмент в Python, который позволяет создавать объекты-генераторы для обработки данных по требованию. Их использование повышает производительность и экономит память, что делает их незаменимыми при работе с большими объемами данных.
Другие уроки курса "Python"
- Оператор морж в Python 3.8
- Оператор walrus в Python
- Работа с collections в Python
- Сравнение строк в Python
- Визуализация пропусков данных
- Объединение множеств в Python
- Поиск шаблона в начале строки
- Логирование с Loguru
- Хранение переменных в словаре.
- Порядок и длина множеств в Python
- Принципы программирования
- Генераторы в Python
- Аргументы *args и **kwargs
- Метод join() для объединения строк
- Установка пакетов с помощью pip
- Форматирование данных с помощью pprint
- Перевод текста с Python Translator
- Обработка исключений в Python
- Работа с itertools
- Принципы SRP и OCP
- Получение частей дроби
- Обновление ключей в Python
- Работа с файлами в Python
- Удаление элементов из списка в Python.
- Добавление элемента к кортежу
- Работа с collections.Counter
- Удаление дубликатов из списка
- Переопределение оператора % для объектов
- Создание словарей и множеств в Python.
- Проверка файла .py на синтаксис.
- Переопределение метода divmod
- Атрибуты массивов в Numpy
- Вычисление времени выполнения
- Обрезка изображения с Pillow
- Оператор «not» в Python
- Проекты на Python
- Вызов внешних программ в Python с помощью sh
- Создание класса очереди
- Метод enumerate() в Python
- Проверка памяти объекта
- Блок try…finally в Python
- Распаковка с оператором *
- Счетчик ссылок в Python
- Сглаживание списка
- Метод __call__ в Python
- Копирование списков в Python















