enumerate

Introduction

В этой статье вы узнаете как организовать работает функция enumerate в Python 3.

Создайте файл enumerate_demo.py и копируйте туда код из примеров.

Запустить файл можно командой python3 enumerate_demo.py

Разберём способы итерации по объектам списка

letters = ['a', 'b', 'c', 'd', 'e'] for letter in letters: print(letter)

python enumerate_demo.py

a b c d e

Перебрать все элементы списка можно с помощью индексов

for index in range(len(letters)): print('letters', index, '=', letters[index])

python enumerate_demo.py

letters 0 = a letters 1 = b letters 2 = c letters 3 = d letters 4 = e

To пользоваться одновременно двумя переменными используется функция enumerate

for index, item in enumerate(letters): print('letters', index, '=', item)

python enumerate_demo.py

letters 0 = a letters 1 = b letters 2 = c letters 3 = d letters 4 = e

enumerate возвращает итерируемый объект (iterable object), который является последовательностью кортежей (tuple) вида (index, item)

To лучше понять происходящее добавьте в скрипт следующий код

enum_obj = enumerate(letters) print(next(enum_obj)) print(next(enum_obj)) print(next(enum_obj)) print(type(enum_obj))

(0, 'a') (1, 'b') (2, 'c') <class 'enumerate'>

Ещё один способ обхода списка - с помощью while

index = 0 while index < len(letters): print('letters', index, '=', letters[index]) index +=1

Share in social media: