Итераторы и итерируемые объекты — это фундаментальные концепции Python, которые упрощают эффективное выполнение циклов и обход данных. Это руководство даст вам четкое представление об итераторах и итерируемых объектах, а также примеры кода, демонстрирующие их использование.
Оглавление
- Введение в Iterators и Iterables
- Итерации: объекты с методом
__iter__
- Итераторы: объекты с методом
__next__
- Использование итераторов и итераций в циклах
- Создание пользовательских итераций и итераторов
- Заключение
1. Введение в Iterators и Iterables
- Итерируемые объекты: объекты, которые можно зацикливать или повторять. Списки, кортежи, строки, словари и многое другое являются примерами итерируемых объектов.
- Итераторы. Объекты, позволяющие перебирать элементы итерируемого объекта. Они поддерживают состояние итерации.
2. Итерации: объекты с методом __iter__
Итерации имеют метод __iter__
, который возвращает объект итератора. Объект итератора используется для обхода элементов.
my_list = [1, 2, 3] my_iter = my_list.__iter__() # Equivalent to iter(my_list) print(next(my_iter)) # Output: 1 print(next(my_iter)) # Output: 2 print(next(my_iter)) # Output: 3
3. Итераторы: объекты с методом __next__
У итераторов есть метод __next__
, предоставляющий следующий элемент в последовательности. Когда элементов больше не осталось, возникает исключение StopIteration
.
my_list = [1, 2, 3] my_iter = iter(my_list) print(my_iter.__next__()) # Output: 1 print(my_iter.__next__()) # Output: 2 print(my_iter.__next__()) # Output: 3