Курс 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. Создание списка дат
  2. Подсчет элементов в Python
  3. Получение текущей даты и времени
  4. Замена атрибута в именованном кортеже
  5. Создание namedtuple списком полей
  6. Декораторы в Python
  7. Извлечение аудио из видео
  8. Руководство по библиотеке pydantic
  9. Логические значения в Python
  10. Изменение переменной в Python: nonlocal
  11. Документирование функций в Python
  12. Необязательные аргументы в Python
  13. Работа с файлами в Python
  14. Порядок операций в Python
  15. Функции map() и reduce() в Python
  16. Декодирование байтов в строку
  17. Метод setitem в Python
  18. Переворот списка в Python
  19. Блок else в циклах Python
  20. Определение объема памяти объекта
  21. Преобразование текста в речь с Python
  22. Взаимодействие с sys
  23. Справка по импортированным модулям
  24. Открытие и редактирование скриптов Python
  25. Проверка строки на палиндром
  26. Функции-генераторы в Python
  27. Нан-рефлексивность в Python
  28. Работа с множествами в Python
  29. Defaultdict в Python
  30. Нахождение пересечения множеств
  31. Вывод баннеров
  32. Подсчет элементов с помощью Counter из collections
  33. Списки в Python: основы
  34. Операторы сравнения в Python
  35. Вывод переменной и строки в Python
  36. Работа с Telegram API на Python
  37. List Comprehension Tutorial
  38. Лимиты на ресурсы Python
  39. Декораторы в Python
  40. Сохранение и загрузка модели в PyTorch
  41. Удаление специальных символов
  42. Копирование объектов в Python
  43. Тип данных TypeVarTuple
  44. Python: библиотеки и функции
  45. Управление импортом в Python
  46. Документация функции help() в Python
  47. Установка пакетов с помощью pip

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