Android

Перечисление Python

44 Функция enumerate Python

44 Функция enumerate Python

Оглавление:

Anonim

enumerate() - это встроенная функция в Python, которая позволяет вам иметь автоматический счетчик, циклически повторяя итерации.

Функция enumerate() Python enumerate()

Функция enumerate() принимает следующую форму:

enumerate(iterable, start=0)

Функция принимает два аргумента:

  • iterable - объект, который поддерживает итерацию. start - номер, с которого начинается счетчик. Этот аргумент не является обязательным. По умолчанию счетчик начинается с 0.

enumerate() возвращает объект перечисления, для которого вы можете вызвать метод __next__() (или next() в Python 2), чтобы получить кортеж, содержащий счетчик и текущее значение итерируемого.

Вот пример того, как создать список кортежей с помощью list() и как перебрать итерацию:

directions = list(enumerate(directions)) for index, value in enumerate(directions): print("{}: {}".format(index, value))

0: north 1: east 2: south 3: west

Если индексация с нуля не работает для вас, выберите другой начальный индекс для перечисления:

directions = list(enumerate(directions, 1))

Функция enumerate() работает с любым итерируемым объектом. Итерируемый - это контейнер, который можно перебирать. Проще говоря, это означает объект, который вы можете зациклить с помощью цикла for . Большинство встроенных объектов в Python, таких как строки, списки и кортежи, являются итеративными.

Напишите больше кода Pythonic с enumerate()

Цикл for Python полностью отличается от традиционного цикла for стиле C, который доступен во многих языках программирования. Цикл for в Python эквивалентен циклу foreach других языков.

Обычная техника, используемая новыми разработчиками Python для получения соответствующего индекса при работе с итерациями, состоит в том, чтобы использовать либо шаблон range(len(…)) , либо устанавливать и увеличивать счетчик:

planets = for i in range(len(planets)): print("Planet {}: {}".format(i, planets))

planets = i = 0 for planet in planets: print("Planet {}: {}".format(i, planet)) i += 1

Приведенные выше циклы можно переписать более идиоматическим способом, используя enumerate() :

planets = for index, value in enumerate(planets): print("Planet {}: {}".format(index, value))

Все методы будут выдавать один и тот же результат:

Planet 0: Mercury Planet 1: Venus Planet 2: Earth Planet 3: Mars Planet 4: Jupiter Planet 5: Saturn Planet 6: Uranus Planet 7: Neptune

Вывод

мы показали вам, как использовать функцию enumerate() в Python.

питон