Курс Python → Генераторы в Python

Генераторы (generators) — это мощный инструмент в Python, который позволяет создавать итераторы, способные генерировать значения на лету. Они позволяют экономить память, так как не требуется хранить все значения в памяти сразу. Генераторы могут быть особенно полезны, когда нужно обработать большой объем данных или когда требуется выполнять итерацию только один раз.

Пример использования генератора в Python:


def my_generator(n):
    for i in range(n):
        yield i ** 2

squares = my_generator(5)

for square in squares:
    print(square)

В данном примере мы создаем генератор my_generator, который возвращает квадраты чисел от 0 до n-1. Функция yield используется для возврата следующего элемента генератора, при этом сохраняется состояние функции. Это позволяет продолжить выполнение функции с того же места, где она была приостановлена.

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

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

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

Автор урока

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

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

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

  1. Метод index() в Python
  2. Установка и использование TensorFlow
  3. Создание списков в Python
  4. Вычисление натуральных логарифмов в NumPy
  5. Динамическая типизация в Python
  6. Beautiful Soup — извлечение данных из HTML
  7. Создание Radio кнопок в tkinter
  8. Закрытие файла в Python
  9. Многопроцессорное программирование в Python
  10. Проверка типа объекта в Python
  11. Переопределение метода xor в Python
  12. Использование модуля __future__
  13. Отношения подклассов в Python
  14. Аннотации типов в Python
  15. Порядок и длина множеств в Python
  16. Преобразование чисел в Python
  17. Метод append() для списка
  18. Создание циклической ссылки
  19. Простой калькулятор Python
  20. Проверка строки на палиндром
  21. Создание итерируемых объектов
  22. Запуск файлового сервера
  23. Метод split() для разделения строк
  24. Функция format() в Python
  25. Генераторы в Python
  26. Метод join() для объединения элементов строки
  27. Возведение в квадрат с помощью itertools
  28. Обрезка изображения с Pillow
  29. Создание словарей в Python
  30. JMESPath в Python
  31. Работа с прокси в Python
  32. Метод setdefault() в Python
  33. Поиск частых элементов в списке
  34. Транспонирование матрицы
  35. Генерация фальшивых данных с Faker
  36. Форматирование чисел в Python
  37. Чтение и запись TOML-конфигов
  38. Возвращение нескольких значений
  39. Обмен данными с asyncio.Queue
  40. Переопределение метода len
  41. Установка и использование Python-dateutil
  42. Работа с enumerate()
  43. Python 3.12: Псевдонимы типов
  44. Работа с NumPy

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