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

Contacts and cooperation:
I recommend our hosting beget.ru
Write to info@urn.su, info@aredel.com if you:
1. Want to write an article for our site or translate an article into your native language.
2. Want to place thematically relevant ads on the site.
3. Ads on my site pass maximum censorship. If you see an ad block unsuitable for school-age children, shocking or misleading - please contact us by e-mail
4. Found a mistake, inaccuracy, bug, etc. on the site. ... .......
5. Articles can be shared on social media by clicking a network icon: