Итераторы — это ключевой концепт в Python, который позволяет создавать и работать с последовательностями объектов. Они являются основой многих встроенных структур данных, таких как списки, кортежи и множества, а также используются для создания пользовательских структур данных.
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Определение итератора
Итератор — это объект, который реализует два метода: __iter__()
и __next__()
. Метод __iter__()
возвращает сам итератор, а метод __next__()
возвращает следующий элемент в последовательности. Если в последовательности больше нет элементов, метод __next__()
должен вызвать исключение StopIteration
.
Пример простого итератора:
class MyIterator: def __init__(self, max_value): self.max_value = max_value self.current_value = 0 def __iter__(self): return self def __next__(self): if self.current_value < self.max_value: self.current_value += 1 return self.current_value else: raise StopIteration my_iter = MyIterator(5) for i in my_iter: print(i)
Вывод:
1
2
3
4
5
Использование итераторов в Python
В Python итераторы используются с помощью ключевого слова for
. Оно позволяет перебирать элементы последовательности, вызывая метод __next__()
для каждого элемента до вызова исключения StopIteration
.
Пример использования итератора с встроенным типом данных:
my_list = [1, 2, 3, 4, 5] for item in my_list: print(item)
Вывод:
1
2
3
4
5
😉 Итераторы в Python можно использовать не только для встроенных структур данных, но и для пользовательских. Это позволяет создавать более сложные и гибкие структуры данных, которые могут быть обработаны с помощью стандартного синтаксиса for
.
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Итог
Итераторы — это мощный инструмент в Python, который позволяет работать с последовательностями объектов. Они используются для перебора элементов встроенных структур данных, таких как списки и кортежи, а также для создания пользовательских структур данных. Используйте итераторы для упрощения работы с последовательностями объектов и для повышения гибкости вашего кода.
Добавить комментарий