Курс Python → Создание генераторов в Python

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

Для создания генератора в Python используется синтаксис генераторного выражения, который выглядит как выражение, заключенное в круглые скобки, например: (i for i in range(10000)). Это позволяет создать генератор, который будет возвращать значения от 0 до 9999 по мере обращения к нему.

Использование генераторов вместо самописных итераторов позволяет экономить память, так как значения не хранятся в памяти целиком, а генерируются по мере необходимости. Это особенно полезно при работе с большими объемами данных, когда память становится критическим ресурсом.

# Пример использования генератора
gen = (i for i in range(10000))
for val in gen:
    print(val)

В данном примере создается генератор, который возвращает значения от 0 до 9999. Затем значения из генератора выводятся на экран с помощью цикла for. При этом значения не хранятся в памяти целиком, что позволяет эффективно использовать ресурсы системы.

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

Автор урока

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

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

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

  1. Форматирование строк в Python
  2. Оператор in и not in в Python
  3. Явный импорт переменных
  4. Преобразование объекта в строку
  5. Метод __getitem__ в Python
  6. Поиск индекса элемента в списке
  7. Создание матрицы в Python
  8. Операторы увеличения и уменьшения переменной
  9. Генерация QR-кодов с библиотекой qrcode
  10. Игра «Угадывание чисел»
  11. Перезапуск ячейки в Jupyter Notebook с dostoevsky
  12. Повторение и перенос строки
  13. Сравнение def и lambda в Python
  14. Перемешивание списка с shuffle()
  15. Таймер обратного отсчета
  16. Библиотека sh: использование команд bash в Python
  17. Функция map() и ленивая оценка
  18. Поиск наиболее частого элемента в списке
  19. Установка виртуального окружения Python
  20. Подсчет частотности элементов в Python
  21. Обновление и получение данных в SQLite
  22. Использование функции product
  23. Измерение времени выполнения
  24. Правила именования переменных
  25. Оператор «or» в Python
  26. Обработка ошибок в Python
  27. Python Поверхностное Копирование
  28. Анонимные функции в Python
  29. Кортежи в Python: особенности и преимущества
  30. Функция enumerate() в Python
  31. Изменение переменной в Python: nonlocal
  32. Распаковка значений в Python
  33. Оператор «and» в Python
  34. Транспонирование 2D-массива с помощью zip
  35. Метод сравнения объектов в Python
  36. Избегание циклических зависимостей классов в Python
  37. Создание списков в Python
  38. Построение графиков в Matplotlib
  39. Копирование списков в Python
  40. inspect в Python: анализ кода
  41. Проверка файла .py на синтаксис.
  42. Печать в одной строке
  43. Динамические маршруты во Flask
  44. Функция findall() для поиска вхождений строки
  45. Взаимодействие с внешними процессами в Python
  46. Работа с часовыми поясами в Python
  47. Обмен переменными в Jupyter

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