Курс 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. Функция pow() — возвести число в степень
  3. Очистка вывода в Python
  4. Оператор деления для класса Rational
  5. Отделение звука от видео
  6. Форматирование строк в Python
  7. Итерация по коллекции в Python
  8. Форматирование данных с помощью pprint
  9. Создание файла с проверкой ошибки
  10. Особенности ключей словаря в Python
  11. Оптимизация поиска в словарях
  12. Создание словарей и множеств в Python
  13. Особенности множеств в Python
  14. Работа со стеком в Python
  15. Создание списков в Python
  16. Получение текущего времени в Python
  17. Вставка переменных в шаблоны Flask
  18. Тестирование функции сложения
  19. Генераторные функции в Python
  20. Проекты на Python
  21. Определение объема памяти объекта
  22. Оператор in в Python
  23. Работа с файлами в Python
  24. Освобождение памяти в Python
  25. Метод remove() для удаления элемента из списка
  26. Оператор space-invader
  27. Разделение строк в Python
  28. Регулярные выражения в Python
  29. Преобразование PowerPoint в PDF.
  30. Проверка подстроки в строке с помощью in
  31. Принципы Zen of Python
  32. Оператор walrus в Python
  33. Логирование в Python
  34. Работа с библиотекой xkcd
  35. Извлечение новостей с newspaper3k
  36. Импорт и использование модулей в Python
  37. Переменные в Python
  38. Отслеживание прогресса с tqdm
  39. Особенности запятых в Python
  40. Python Менеджер контекста
  41. Автоматизация скриптов на AWS Lightsail.
  42. Объявление переменных в Python
  43. UserString в Python
  44. Обрезка изображения с Pillow
  45. Структуры данных в Python
  46. Разделение строки с помощью split()

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