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

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

Давайте рассмотрим пример генератора my_range, который создает итератор, возвращающий числа от start до stop с заданным шагом step:


def my_range(start, stop, step):
    while start < stop:
        yield start
        start += step

В данном примере функция my_range использует ключевое слово yield для возврата значений по одному при каждом вызове функции next(). Таким образом, мы можем итерироваться по результатам генератора, не занимая лишнюю память для хранения всей последовательности чисел.

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

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

Автор урока

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

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

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

  1. Удаление дубликатов в pandas
  2. Руководство по Pymorphy2
  3. Сериализация объектов в Python
  4. Оператор match в Python
  5. Искажение имен в Python
  6. Оптимизация памяти в Python
  7. Аннотации типов в Python
  8. Ускоренный импорт библиотек
  9. Получение списка файлов в директории с использованием os
  10. Обработка исключений в Python
  11. Отладка производительности Python
  12. Получение ID процесса
  13. Метод __imod__ для Python
  14. Преобразование документов в PDF с помощью Spire.Office
  15. Метод Event.wait() в Python
  16. Создание Telegram-бота на Python
  17. Компиляция регулярных выражений
  18. Замена текста с помощью sub
  19. Циклы for в Python
  20. Переопределение метода __rshift__
  21. Потоковый ввод в Python
  22. Разбиение текста в Python
  23. Форматирование данных с pprint
  24. Векторизация в Python с NumPy.
  25. Вывод букв строки в Python
  26. Метод rpow в Python
  27. Создание тестовых данных с Faker
  28. Beautiful Soup — извлечение данных из HTML
  29. Преобразование генераторов в циклы
  30. Выражения-генераторы в Python
  31. Группы исключений в Python
  32. Переопределение унарных операторов
  33. Оператор == в Python
  34. Получение текущей даты и времени с помощью datetime
  35. Форматирование строк в Python.
  36. Взаимодействие с внешними процессами в Python
  37. Шаблоны и наследование в Flask
  38. Автоматизация действий с Pyautogui
  39. Метод count в Python: почему count(», ») возвращает 4?
  40. Структуры данных в Python
  41. Проверка окончания строки с помощью str.endswith()
  42. Обход словаря в Python
  43. Проверка подстроки в строке
  44. Создание пар из последовательностей
  45. Установка переменной среды в Python
  46. Добавление элемента к кортежу
  47. Оператор del в Python

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