Что делает метод enumerate python?
enumerate()
это скорее функция, нежели метод. Данная функция возвращает так называемый enumerate object из переданного ей итерируемого объекта. Этот enumerate object состоит из кортежей, первый элемент которого - порядковый номер элемента итерируемого объекта (по умолчанию это 0), а второй - сам элемент. Работает это следующим образом:
x = ('apple', 'banana', 'cherry')
y = enumerate(x)
print(list(y)) # => [(0, 'apple'), (1, 'banana'), (2, 'cherry')]
Функция enumerate()
может принимать целое число вторым необязательным аргументом. С этого числа и будет вестись отсчет:
x = ('apple', 'banana', 'cherry')
y = enumerate(x, 2)
print(list(y)) # => [(2, 'apple'), (3, 'banana'), (4, 'cherry')]

Метод enumerate()
в Python добавляет счётчик к итерируемому объекту и возвращает его.
Эта функция полезна, когда нужны не только значения из итерации, но и их индексы. Она создаёт объект-итератор, который генерирует кортежи, содержащие индекс элемента и сам элемент.
Параметры
Функция enumerate()
принимает два параметра:
- iterable — последовательность, итератор или объекты, поддерживающие итерацию.
- start (необязательно) —
enumerate()
начинает отсчет с этого числа. Если start опущен, за начало принимается 0.
Примеры
sequence = [1, 2, 7, 19]
# Сравните вариант со счетчиком
idx = 0
for item in sequence:
print(idx)
idx += 1
# И с использованием enumerate
for idx, item in enumerate(sequence):
print(idx)
#Ответы
#0
#1
#2
#3
#0
#1
#2
#3