Курс Python → Выражения-генераторы в Python

Выражения-генераторы в Python представляют собой удобный способ создания итерируемых объектов без необходимости сохранения всех значений в памяти. Они позволяют эффективно обрабатывать большие объемы данных, так как элементы вычисляются по требованию.

Одной из особенностей выражений-генераторов является то, что после прохождения по ним они остаются пустыми. Это означает, что после того, как все элементы были извлечены из генератора, его состояние сбрасывается и повторный проход по нему начнется сначала.

Еще одним важным моментом является то, что выражение-генератор может быть бесконечным. Это означает, что оно может продолжать генерировать элементы до бесконечности, что полезно в определенных сценариях, где необходимо работать с потоками данных или генерировать последовательности чисел.

Важно помнить, что к выражениям-генераторам не применимы срезы, так как они не поддерживают произвольный доступ к элементам. Однако из генератора легко можно получить нужную коллекцию, преобразовав его в список или другую структуру данных.


# Пример использования выражения-генератора
gen = (x**2 for x in range(10))
print(list(gen)) # Преобразование генератора в список

В следующей главе мы более подробно рассмотрим способы работы с выражениями-генераторами, их преимущества и ограничения, а также покажем примеры использования в реальных сценариях.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Принципы SRP и OCP
  2. Получение ID текущего процесса
  3. Обработка ошибки IndexError
  4. Удаление специальных символов
  5. Сортировка слиянием
  6. Разделение строк в Python
  7. Методы list в Python
  8. Подписка на Kaspersky Team
  9. Проверка существования переменной с оператором :=
  10. Вызов функций по строке в Python.
  11. Создание namedtuple списком полей
  12. Транспонирование 2D-массива с помощью zip
  13. Встроенные функции Python
  14. Базовые объекты Python
  15. Генераторы по генератору
  16. Декораторы в Python
  17. Основные функции и модули Python
  18. Логирование с Logzero
  19. Список переменных в Python
  20. Метод rmatmul для пользовательских матриц
  21. Сравнение неупорядоченных списков
  22. Улучшенные подсказки для импорта в Python 3.12
  23. Объединение списков в Python.
  24. Работа с атрибутом dict
  25. Проверка окончания строки с помощью str.endswith()
  26. Создание обратного итератора
  27. Оператор «and» в Python
  28. Функция zip() — объединение последовательностей
  29. Анализ кода — Python
  30. Python: Фильтрация списков с помощью filter()
  31. Python: отсутствие точек с запятыми
  32. Копирование списков в Python
  33. Измерение времени выполнения кода
  34. Метод is_absolute() для PurePath
  35. Генераторы в Python
  36. Преобразование букв в нижний регистр
  37. Работа с контекстными менеджерами
  38. Преобразование числа в восьмеричную строку
  39. Дизассемблирование Python кода
  40. Основы Python за 14 дней
  41. Установка и использование модуля Wikipedia

Marketello читают маркетологи из крутых компаний