Курс 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"
- Заказ карты Тинькофф Black
- Python: Фильтрация списков с помощью filter()
- Работа с NumPy.linalg
- Big O оптимизация
- Обработка исключений в Python
- Модуль subprocess: запуск внешних команд
- Работа с пакетами
- Отладка в Python
- Поиск уникальных элементов строкой в Python
- Работа с SQLite в Python
- Метод clear для коллекций
- Избегание изменяемых аргументов
- Динамическая типизация в Python
- Работа с defaultdictами в Python
- Работа с пользовательским вводом
- Замена переменных в Python
- Преобразование чисел в восьмеричную строку
- Счетчик в Python: most_common()
- JMESPath в Python
- Именование переменных в Python
- Объединение списков с помощью zip
- Разделение строки с регулярными выражениями
- Поиск индексов в списке
- Управление мышью и клавиатурой с Pyautogui
- Docstring в Python
- Лямбда-функции в Python
- Создание namedtuple списком полей
- Работа с датой и временем в Python
- Работа с IP-адресами в Python
- Работа с Path в Python
- Работа с многоуровневыми словарями в Python
- Особенности множеств в Python
- Работа с CSV в Python
- Импорт модулей в Python 3.12
- Форматирование строк в Python
- Вывод сложных структур данных с помощью pprint
- Потоковый ввод в Python
- Аннотации типов в Python
- Beautiful Soup — извлечение данных из HTML
- Возврат значений из генератора
- Работа с collections.Counter
- Определение локальных переменных в Python
- Выражения-генераторы в Python
- Применение команды break















