Курс 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. Функция zip() в Python
  3. Преобразование числа в список цифр
  4. Освоение Python
  5. Импорт в Python: список all
  6. Работа с многоуровневыми словарями в Python
  7. Блок try…finally в Python
  8. Оператор is в Python
  9. Блок else в циклах.
  10. Тип CodeType в Python.
  11. Бинарный поиск
  12. Упрощение работы с JSON-данными в Python
  13. Обработка ошибок в Python
  14. Преобразование списка в словарь через генератор
  15. Работа с deque из collections
  16. Динамическая типизация в Python
  17. Метод rmatmul для пользовательских матриц
  18. Лямбда-функции в Python
  19. Enum в Python
  20. Измерение времени выполнения с помощью time
  21. Оператор «is not» в Python
  22. Объединение строк с помощью метода join
  23. Colorama: окрашивание текста в Python
  24. Магические методы в Python
  25. Работа со стеком в Python
  26. Операторы присваивания в Python
  27. Обработка ошибки IndexError
  28. Метод rpow в Python
  29. Удаление элементов по срезу
  30. Добавление элемента в список.
  31. Пропуск строк в файле с itertools
  32. Установка Home Assistant
  33. Объединение коллекций в Python
  34. Использование html-скриптов в Jupyter Notebook
  35. Форматирование строк с f-строками
  36. Оптимизация интернирования строк
  37. Python и Юникод: работа с цифрами
  38. Экспорт данных с помощью writefile
  39. Работа со словарями Python
  40. Многопоточность и асинхронное программирование в Python
  41. Работа с JSON данными в Python
  42. Тайное преобразование типа ключа
  43. Распаковка аргументов в Python
  44. Преобразование регистра символов
  45. Метод title() в Python
  46. Реализация метода __abs__ в Python

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