# Python enumerate(): numeración y salida de objetos

La función enumerate() de Python se utiliza para devolver una entrada como un objeto enumerado. Con esta función incorporada puedes, entre otras cosas, numerar cadenas y listas.

## ¿Qué es Python `enumerate()`?

La función de Python `enumerate()` se utiliza para **convertir una entrada en una enumeración**. A los objetos, que también pueden ser cadenas o [tuplas de Python](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/python-tuples/), por ejemplo, se les asigna un contador a cada uno. La enumeración es consecutiva y comienza en “0” por defecto. La función está incluida por defecto en el [lenguaje de programación](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/lenguajes-de-programacion-web/).

## Sintaxis y parámetros de `enumerate()` de Python

La sintaxis de `enumerate()` de Python es la siguiente:

```python
enumerate(iterable, start)
```

Tiene dos parámetros:

- “iterable”: es un objeto o una secuencia que se puede recorrer en un bucle. A este parámetro se le antepone la numeración posteriormente. Es obligatorio.
- “start”: este es un parámetro opcional. Con él, puedes determinar a partir de qué valor numérico debe comenzar la numeración. Su valor predeterminado es “0”.

## Ejemplo de enumeración con `enumerate()`

Para ilustrar cómo funciona, vamos a elegir un ejemplo sencillo con cuatro colores diferentes. Los numeramos utilizando `enumerate()` de Python. El código de concordancia tendrá este aspecto:

```python
colores = ['azul', 'rojo', 'amarillo', 'naranja'] 
secuencia = enumerate(colores) 
print(list(secuencia))
```

Obtenemos este resultado:

```python
[(0, 'azul'), (1, 'rojo'), (2, 'amarillo'), (3, 'naranja')]
```

## enumerate() con índice inicial

Como no hemos especificado un índice de inicio, la enumeración comienza en “0”. Para cambiar esto, añadimos el **parámetro “inicio”** con el valor “1” a `enumerate()`. Para ello, cambiamos ligeramente el código anterior:

```python
colores = ['azul', 'rojo', 'amarillo', 'naranja'] 
secuencia = enumerate(colores, 1) 
print(list(secuencia))
```

Así, el resultado es un poco mejor:

```python
[(1, 'azul'), (2, 'rojo'), (3, 'amarillo'), (4, 'naranja')]
```

Puedes ajustar el índice de inicio según sea necesario para que la enumeración también pueda comenzar con cualquier otro valor.

## La función `enumerate()` con un bucle `for`

En combinación con un [bucle for](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/bucle-for-en-python/), podemos combinar el uso de `enumerate()` **con y sin índice de inicio**. Para el primer bucle, prescindimos del parámetro “start”. Por tanto, la cuenta comienza en “0”. Para el segundo bucle, incluimos el parámetro con el punto de inicio “5”. Por lo tanto, el recuento comienza en este punto. Con la etiqueta `"\n"`, ordenamos al sistema que cree una nueva línea cada vez para que sea un poco más claro. Este es el código para esta combinación:

```python
colores = ['azul', 'rojo', 'amarillo', 'naranja'] 
 
for secuencia in enumerate(colores): 
  print(secuencia) 
  print("\n") 
 
print("Continúa desde 5")     
 
for secuencia in enumerate(colores, 5): 
  print(secuencia) 
  print("\n")
```

Ahora, nuestro resultado es el siguiente:

```python
(0, 'azul') 
(1, 'rojo') 
(2, 'amarillo') 
(3, 'naranja') 
Continúa desde 5 
(5, 'azul') 
(6, 'rojo') 
(7, 'amarillo') 
(8, 'naranja')
```

## Enumerar una cadena con enumerate()

Si quieres enumerar una cadena, `enumerate()` también es la elección correcta, ya que puede descomponer la cadena **en sus partes individuales y numerarlas**. Este sería el código adecuado:

```python
cadena = "ejemplo" 
for x in enumerate(cadena, 1): 
    print(x)
```

Este es el resultado correspondiente:

```python
(1, 'e') 
(2, 'j') 
(3, 'e') 
(4, 'm') 
(5, 'p') 
(6, 'l') 
(7, 'o')
```

Consejo La mejor solución para páginas web y aplicaciones: con [Deploy Now](https://www.ionos.mx/alojamiento/deploy-now "Deploy Now de IONOS") de IONOS, puedes desplegar tus proyectos web directamente a través de GitHub. No solo te beneficiarás de un precio justo, sino que también podrás personalizar la configuración según tus necesidades. Pide consejo a nuestros expertos.


This is a markdown version of: [https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/python-enumerate/](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/python-enumerate/) for AI/LLM consumption.