Курс 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. Копирование объектов в Python
  4. Python defaultdict добавление ключа
  5. Печать календаря
  6. Генераторы списков в Python
  7. Оптимизация методов в Python 3.7
  8. Копирование объектов в Python
  9. Объединение списков с помощью zip
  10. Основы Python за 14 дней
  11. Проверка типов с использованием isinstance
  12. Оператор in для Python
  13. Перемешивание списка с shuffle()
  14. Использование метода lower()
  15. Генерация QR-кодов с Python
  16. Создание копии списка в Python
  17. Измерение времени выполнения кода с помощью time
  18. capitalize() — изменение регистра первого символа строки
  19. Фильтрация данных в Python.
  20. Преобразование списков в словарь
  21. Удаление элементов из списка в Python
  22. Вычисление разности множеств в Python
  23. Обработка исключений
  24. Сортировка с параметром key
  25. Операции с комплексными числами
  26. Генераторы списков
  27. Открытие и запись файлов
  28. Проверка подстроки в строке с помощью in
  29. Шаблоны Flask: условия и циклы
  30. Обход дочерних элементов BeautifulSoup
  31. Введение в PyTorch
  32. Список переменных с %who
  33. Создание треугольника Паскаля
  34. Порядок операций в Python
  35. Работа с collections.Counter
  36. Группировка элементов Python
  37. Цикл for в Python
  38. Метод join для объединения строк
  39. Функции map, filter, reduce
  40. Генератор списка в Python
  41. Декораторы с аргументами
  42. Numpy: разбиение массивов
  43. Подсчет вхождений элементов
  44. Округление чисел с помощью round
  45. Названия столбцов в Python таблицах
  46. Ключевое слово global в Python
  47. Оператор * в Python
  48. Удаление элемента из списка в Python

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