Вы можете преобразовать перечисляемые объекты в список и кортеж, используя методы list() и tuple() соответственно. Каждый раз, когда мы имеем дело с итераторами, мы также можем вести подсчет итераций.
Python облегчает задачу программистов, предлагая использовать для этой задачи встроенную функцию enumerate(). Рассмотрим , что делает функция enumerate() в Python на примерах.

Что означает и делает функция enumerate() в Python?
Python enumerate() — это встроенный метод, который добавляет счетчик к итерации и возвращает объект перечисления. Функция enumerate() принимает набор (например, кортеж) и возвращает его как перечисляемый объект. Функция enumerate() добавляет счетчик в качестве ключа объекта перечисления.
Синтаксис функции enumerate() следующий.
|
1 |
enumerate(iterable, start) |
- Параметр iterable — это итерируемый объект.
- Параметр start — это число, и это начальный номер перечисляемого объекта.
См. следующий пример.
|
1 2 3 4 5 |
# app.py heir =('bastard', 'jon snow', 'aegon targaryen') result = enumerate(heir) print(result) |
Смотрите вывод.

Преобразование объекта перечисления в список
См. следующий пример, в котором сначала мы используем функцию enumerate для создания объекта перечисления, а затем используем метод списка для преобразования объекта перечисления в список.
|
1 2 3 4 5 6 7 |
# app.py heir = ['bastard', 'jon snow', 'aegon targaryen'] result = enumerate(heir) print(result) print(type(result)) print(list(result)) |
Смотрите вывод.

Второй параметр start
Давайте изменим счетчик по умолчанию и установим начальное значение на 21 и посмотрим на результат.
|
1 2 3 4 5 |
# app.py heir = ['bastard', 'jon snow', 'aegon targaryen'] result = enumerate(heir, 21) print(list(result)) |
Смотрите вывод.

Перебор объекта Enumerate
Давайте пройдемся по перечисляемому объекту и выведем один за другим элемент в консоли.
|
1 2 3 4 5 6 7 |
# app.py heir = ['bastard', 'jon snow', 'aegon targaryen'] result = enumerate(heir, 19) for item in result: print(item) |
Смотрите вывод.

Итак, функция Python enumerate() добавляет счетчик в итерируемый объект.
По умолчанию enumerate() начинает отсчет с 0, но если вы дадите ему второй целочисленный аргумент, вместо этого он начнет отсчет с этого числа.
