Часто при разработке программ на Python возникает необходимость последовательного обхода элементов некоторой структуры данных. Например, нужно пройти по всем элементам списка и для каждого из них выполнить некоторую операцию. В таких ситуациях на помощь приходят понятия итератора, итерируемого объекта и итерации.
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Итерируемые объекты
Итерируемый объект в Python — это любой объект, от которого можно получить итератор. Такими объектами являются, например, списки, кортежи, строки и словари. Итерируемыми объектами могут быть и пользовательские объекты, если в их классе реализован специальный метод __iter__()
.
Пример использования итерируемого объекта:
numbers = [1, 2, 3, 4, 5] # список - это итерируемый объект for num in numbers: print(num)
Итераторы
Итератор в Python — это объект, который реализует метод __next__()
, возвращающий следующий элемент итерируемого объекта при каждом вызове, и бросающий исключение StopIteration
, когда элементы закончились. Итератор получают с помощью функции iter()
.
Пример использования итератора:
numbers = [1, 2, 3, 4, 5] iterator = iter(numbers) # получаем итератор print(next(iterator)) # 1 print(next(iterator)) # 2 # и так далее, пока не закончатся элементы
Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.
Итерации
Итерация — это процесс обхода элементов итерируемого объекта. В Python для этого обычно используется цикл for
.
Пример итерации:
numbers = [1, 2, 3, 4, 5] for num in numbers: print(num)
В этом примере происходит итерация по элементам списка numbers
.
Таким образом, итераторы, итерируемые объекты и итерации — это ключевые понятия Python, позволяющие эффективно работать со структурами данных.
Добавить комментарий