⚡ Краткий справочник
iter(obj) — получить итератор из итерируемого объекта.
next(iterator, default) — следующий элемент или значение по умолчанию.
obj.__iter__() — магический метод создания итератора.
iterator.__next__() — магический метод получения следующего элемента.
itertools.count/cycle/chain/product/permutations — готовые итераторы.
sys.getsizeof(obj) — размер объекта в байтах.
Функции и методы
| Функция / метод | Описание | Пример |
iter(iterable) | Возвращает итератор для переданного итерируемого объекта. | it = iter([1, 2, 3]) |
next(iterator) | Возвращает следующий элемент итератора. | next(it) → 1 |
next(iterator, default) | Возвращает default, если итератор исчерпан. | next(it, None) |
obj.__iter__() | Магический метод, вызываемый функцией iter(). | [1].__iter__() |
iterator.__next__() | Магический метод, вызываемый функцией next(). | it.__next__() |
sys.getsizeof(obj) | Возвращает размер объекта в байтах. | sys.getsizeof([]) |
| Функция | Описание | Пример |
count(start=0, step=1) | Бесконечный счётчик. | itertools.count(1, 10) |
cycle(iterable) | Бесконечно повторяет элементы коллекции. | itertools.cycle("ABC") |
chain(*iterables) | Последовательно объединяет несколько итерируемых объектов. | itertools.chain([1,2], [3,4]) |
product(*iterables, repeat=1) | Декартово произведение. | itertools.product([1,2], "AB") |
permutations(iterable, r=None) | Все перестановки длины r. | itertools.permutations("ABC", 2) |
Параметры iter() и next()
| Параметр | Тип | Описание | По умолчанию |
iterable | любой итерируемый объект | Источник, из которого создаётся итератор. | — |
iterator | итератор | Объект, из которого запрашивается следующий элемент. | — |
default | любой | Значение, возвращаемое вместо StopIteration. | — |