Ayúdanos a seguir proporcionándote tutoriales gratuitos y de calidad desactivando tu bloqueador de anuncios. suscriptores a nuestro sitio.

Cómo enumerar un objeto en un bucle con enumerate en Python

1 mar 2021 2 min di lettura
Cómo enumerar un objeto en un bucle con enumerate en Python
Tabla de contenidos

Introducción

enumerate() es una función incorporada en Python que le permite tener un contador automático mientras recorre iterables.

Función de Python enumerate ()

La función enumerate() toma la siguiente forma:

enumerate(iterable, start=0)

La función acepta dos argumentos:

  • iterable: un objeto que admite la iteración.
  • start: el número en el que comienza el contador. Este argumento es opcional. De forma predeterminada, el contador comienza en 0.

enumerate() devuelve un objeto enumerado en el que __next__() (o next() en Python 2) para obtener una tupla que contiene un recuento y el valor actual del iterable.

Aquí hay un ejemplo de cómo crear una lista de tuplas usando list() y cómo recorrer un iterable:

directions = ["north", "east", "south", "west"]
 list(enumerate(directions))

 for index, value in enumerate(directions):
 print("{}: {}".format(index, value))
[(0, 'north'), (1, 'east'), (2, 'south'), (3, 'west')]

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

Si la indexación de base cero no le funciona, elija otro índice inicial para la enumeración:

directions = ["north", "east", "south", "west"]
 list(enumerate(directions, 1))
[(1, 'north'), (2, 'east'), (3, 'south'), (4, 'west')]

La función enumerate() funciona en cualquier objeto iterable. Un iterable es un contenedor que se puede repetir. En pocas palabras, significa un objeto al que puede pasar un bucle for La mayoría de los objetos integrados en Python, como cadenas, listas y tuplas, son iterables.

Escribir código Pythonic con enumerate ()

for es totalmente diferente del bucle for disponible en muchos lenguajes de programación. El for en Python es equivalente al foreach en otros lenguajes.

Una técnica común utilizada por los desarrolladores de Python más nuevos para obtener el índice correspondiente cuando se trata de iterables es usar el range(len(...)) o establecer e incrementar un contador:

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
 for i in range(len(planets)):
 print("Planet {}: {}".format(i, planets[i]))
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
 i = 0
 for planet in planets:
 print("Planet {}: {}".format(i, planet))
 i += 1

Los bucles anteriores se pueden reescribir de manera más idiomática usando enumerate():

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
 for index, value in enumerate(planets):
 print("Planet {}: {}".format(index, value))

Todos los métodos producirán el mismo resultado:

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

Conclusión

En este artículo, le mostramos cómo usar la función enumerate()

Apóyenos si le gusta nuestro contenido. Gracias.

Buy me a coffeeBuy me a coffee

Únase a la conversación

Apóyenos con una donación.

Genial! A continuación, complete el pago para obtener acceso completo a Noviello.it.
Bienvenido de nuevo! Has iniciado sesión correctamente.
Te has suscrito correctamente a Noviello.it.
Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.
Éxito! Su información de facturación ha sido actualizada.
Su facturación no se actualizó.