Función Enumerate () en Python: un recorrido básico

Publicado: 2021-06-24

Python es uno de los lenguajes preferidos entre los científicos de datos. El lenguaje es intuitivo y Python tiene una variedad de bibliotecas útiles para abordar diferentes problemas. Tiene numerosos módulos para ayudar a los científicos de datos en varias etapas de cualquier problema de ciencia de datos, desde la extracción de datos hasta el análisis y la generación de informes.

En upGrad, hemos asesorado a profesionales de diversos campos, que incluyen economía, humanidades e ingeniería. Python ha sido, con mucho, el lenguaje más fácil de aprender tanto para principiantes como para profesionales en cualquier etapa de su carrera. Entonces, si eres un aspirante a científico de datos que busca dar sus primeros pasos, ¡Python podría ser un buen punto de partida!

El lenguaje de programación Python tiene múltiples funciones para ayudarlo a examinar diferentes conjuntos de datos y manipular contenedores de datos según sus requisitos. Una de esas características es el método enumerate(). Es una de las funciones más importantes de Python, especialmente para trabajar con conjuntos de datos voluminosos. No solo eso, sino que la función también está mucho más optimizada que otras funciones de Python que realizan una tarea similar: mantiene su código eficiente y limpio.

La función agrega un contador a cualquier objeto iterable. Luego, utilizando el contador, puede realizar un seguimiento del número de iteraciones que se han producido. El valor de este contador se almacena por separado. Con este método, puede recorrer una lista, un diccionario, una tupla o un conjunto de elementos mientras realiza un seguimiento del índice de todos los elementos.

¡En este artículo, desglosaremos más la función enumerar()!

Sintaxis y aplicación del método enumerate()

La función enumerar () crea una variable de contador separada que realiza un seguimiento del número de iteraciones en un ciclo. Es una función integrada de Python, por lo que no necesita importar ninguna biblioteca para acceder a ella.

Mientras usa la función enumerate(), no tiene que preocuparse por crear la instrucción range() para obtener la longitud completa de la matriz. Como tiene la variable de contador, puede iterar rápidamente sobre enumerate() sin crear un iterador diferente.

Esta es la sintaxis del método enumerate():

enumerar (iterable, startIndex)

Tiene dos parámetros:

  • Iterable: cualquier objeto sobre el que se pueda hacer un bucle.
  • startIndex: Esto es opcional. Si proporciona algún valor aquí, el conteo comenzará desde el valor que proporcione y se incrementará hasta el final del ciclo. De forma predeterminada, el valor de startIndex es 0.

¡Comprendamos el funcionamiento del método enumerate() revisando algunos ejemplos!

Aquí hay un pequeño fragmento de código. Tenemos una matriz con el nombre de food_items y, en el ciclo for, hemos llamado al método enumerate() con el iterable siendo food_items (esta será la matriz sobre la que se repetirá esta función). Luego, estamos tratando de imprimir el índice y el nombre: estos son los dos elementos devueltos por enumerate ()

food_items = [“Pizza”, “Hamburguesa”, “Ensalada”, “Lasaña”, “Espagueti”]

para índice, nombre en enumerate(food_items):

imprimir (índice, nombre)

La función enumerar () itera sobre nuestro elemento de matriz de alimentos y devuelve el índice y el nombre. El índice es el número de iteraciones que han ocurrido y el nombre es el elemento particular de la lista. Esto es lo que genera el programa:

0 pizzas

1 hamburguesa

2 Ensalada

3 Lasaña

4 espaguetis

Como puede ver, el resultado es el esperado: obtiene un objeto de índices y nombres para los diferentes elementos en su lista de elementos de alimentos. ¡Usar la función enumerate() en lugar de len() o range() hace que nuestro código sea extremadamente limpio y legible!

Trabajando con el Objeto Enumerar

Por defecto, enumerate() devuelve una lista de tuplas. Podemos ver esto imprimiendo el valor de 'elemento' mientras iteramos sobre la matriz food_items:

para el artículo en enumerate (food_items):

imprimir (elemento)

Este código devuelve el valor del índice y el alimento en ese índice en una estructura de datos de tupla.

(0, 'Pizza')

(1, 'Hamburguesa')

(2, 'Ensalada')

(3, 'Lasaña')

(4, 'Espaguetis')

Si ha prestado atención desde el comienzo de este artículo, recordará que el método enumerate() toma dos parámetros: iterable y startIndex. De forma predeterminada, nuestro método hasta ahora hablaba, como startIndex. ¡Intentemos cambiar eso y veamos cómo funciona!

food_items = [“Pizza”, “Hamburguesa”, “Ensalada”, “Lasaña”, “Espagueti”]

para índice, nombre en enumerar (food_items, 10):

imprimir (índice, nombre)

Nuestro programa devuelve lo siguiente

10 pizzas

11 hamburguesa

12 Ensalada

13 lasaña

14 espaguetis

Esto es útil para casos de uso en los que le gustaría comenzar su lista desde un número que no sea 0.

También podemos crear tuplas con el elemento de la lista y el índice usando el método enumerate(). Aquí hay un ejemplo:

food_items = [“Pizza”, “Hamburguesa”, “Ensalada”, “Lasaña”, “Espagueti”]

alimentos_artículos_con_contador = lista(enumerar(alimentos_artículos, 1))

imprimir (comida_artículos_lista_con_contador)

El código devolverá una lista de tuplas con los alimentos y el valor del índice del método enumerate(). Echale un vistazo:

[(1, 'Pizza'), (2, 'Hamburguesa'),(3, 'Ensalada'), (4, 'Lasaña'), (5, 'Espagueti')]

Conclusión

La función enumerate() en Python es una función robusta y optimizada. Es útil si desea iterar sobre una matriz de valores y manipular datos en diferentes ubicaciones de la matriz.

Ahora que conoce los conceptos básicos de enumerate(), continúe y practique: cree un par de matrices e intente ejecutar la función enumerate() con diferentes entradas. Después de todo, la programación tiene que ver con la práctica. Es importante agregar: la programación (y la ciencia de datos, en particular) también se trata de saber las cosas correctas, además de practicar descaradamente. Necesita encontrar una combinación de los dos: conocimiento y práctica.

Si eres nuevo en este campo y buscas ayuda, ¡upGrad te respalda! Nuestra Maestría en Ciencias en Aprendizaje Automático e Inteligencia Artificial se ejecuta en colaboración con IIIT-Bangalore y LJMU. Obtiene apoyo 1 a 1 de expertos de la industria, un sólido grupo de estudiantes y apoyo profesional de 360 ​​grados.

¡Comuníquese con nosotros hoy y avance en su carrera!

Liderar la revolución tecnológica impulsada por la IA

MÁSTERES EN MACHINE LEARNING E INTELIGENCIA ARTIFICIAL
Aplica ya