TGViewer
Python Academy Python Academy @python_academy · 44.2K subscribers
Post #1366 7.19K
Функция itertools.cycle

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

Сегодня мы бы хотели показать вам функцию cycle() из itertools. Данная функция принимает на вход итерируемый объект и создает бесконечный итератор, циклически возвращающий элементы данного объекта. Фишка заключается в том, что когда элементы последовательности заканчиваются, итерация начинается вновь с первого элементы.

К примеру, функция cycle() из последовательности ['red', 'white', 'blue'] генерирует повторяющуюся бесконечную. Но важно при проходе при итерации по такому итератору предусмотреть выход из цикла (а не как у нас в первом случае с colors:). Так как это итератор, то мы можем использовать его для получения значений через функцию next(colors).

Мы также можем воспользоваться islice(), который вернет итератор по подмножеству переданного объекта.

#генераторы #itertools
  • 👍 16
  • ❤ 2
More from @python_academy
  1. Oct 3, 2026Полезные функции модуля itertools Модуль itertools - инструмент в Python для работы с итер…
  2. Oct 2, 2026Scrapy: Мощный инструмент для веб-скрапинга на Python Scrapy - это высокоэффективная библи…
  3. Oct 1, 2026⁠Упаковка параметров с помощью urlencode Довольно часто приходится работать с разнообразны…
  4. Sep 30, 2026Асинхронные запросы с aiohttp Модуль aiohttp представляет из себя асинхронный HTTP клиент/…
  5. Sep 29, 2026Typeshed Typeshed — это коллекция заглушек (stubs) для стандартной библиотеки Python, библ…
  6. Sep 28, 2026SCons SCons — это современная система сборки программного обеспечения, основанная на Pytho…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →