Что такое итерируемый объект
Объект, который представляет возможность поочередно обойти свои элементы.
Например список - это итерируемый объект. Сам по себе он не поддерживает функцию next(), но мы можем получить из списка итератор с помощью функции inter(). Полученный объект и будет итератором.
s = [1, 2, 3]
next(s) # TypeError: 'list' object is not an iterator
b = iter(s)
next(b) # 1
next(b) # 2
next(b) # 3
- список
- строка
- файл
Oct. 10, 2023, Источник
Итерируемый объект — это объект, который может быть перебран поэлементно с помощью цикла `for` или других методов, таких как `map()`, `filter()`, `sum()`, `join()` и т. д. Он предоставляет возможность последовательно перебирать свои элементы без явного указания индексов.
Объект считается итерируемым, если он реализует метод `__iter__()`, который возвращает итератор. Итератором является объект, который реализует метод `__next__()`, который возвращает следующий элемент из коллекции. При достижении конца коллекции метод `__next__()` вызывает исключение `StopIteration`, чтобы указать на завершение итерации.
Множество типов данных и структур данных являются итерируемыми, включая списки (list), кортежи (tuple), строки (str), множества (set), словари (dict) и другие.
Пример итерации по списку:
my_list = [1, 2, 3, 4, 5]
for item in my_list:
print(item)
Здесь переменная `my_list` является итерируемым объектом, и мы можем перебирать ее элементы в цикле `for`, поочередно присваивая каждый элемент переменной `item`. Когда все элементы исчерпаны, цикл завершается.
Feb. 19, 2024, easyoffer