Python iterar lista al revés

Niket Gandhir 10 octubre 2023
  1. Utilice la función reversed() para recorrer una lista en orden inverso en Python
  2. Utilice la función range() para recorrer una lista en orden inverso en Python
  3. Utilice el bucle for para recorrer una lista en orden inverso en Python
Python iterar lista al revés

Este tutorial discutirá varios métodos disponibles para recorrer una lista en orden inverso en Python.

Utilice la función reversed() para recorrer una lista en orden inverso en Python

Podemos recorrer una lista en Python en orden inverso usando la función incorporada reversed() disponible. La función reversed() devuelve la iteración inversa de la secuencia proporcionada como entrada.

La función reversed() acepta un solo parámetro, que es la secuencia a invertir. La secuencia puede ser una tupla, cadena, lista, rango, etc.

Por ejemplo,

x = ["my", "unlimited", "sadness"]
for i in reversed(x):
    print(i)

Producción :

my
sadness
unlimited

Sin embargo, para acceder también al índice original de la secuencia, podemos usar la función enumerate() en nuestra lista antes de pasarla a la función reversed().

Consulte el siguiente código.

x = ["my", "unlimited", "sadness"]
for i, e in reversed(list(enumerate(x))):
    print(i, e)

Producción :

2 sadness
1 unlimited
0 my

Por lo tanto, obtenemos la salida con el índice original de la secuencia. Sin embargo, vale la pena señalar que enumerate() devuelve un generador y los generadores no se pueden revertir. Por lo tanto, es vital convertirlo primero en una lista.

Utilice la función range() para recorrer una lista en orden inverso en Python

Otro método para recorrer una secuencia en orden inverso en Python es usar la función range disponible.

La función range disponible en Python devuelve una secuencia de números, comenzando desde 0 por defecto, que se incrementa automáticamente en un 1 adicional (por defecto).

La función range acepta tres parámetros diferentes: start (opcional), stop (obligatorio), step (opcional). Los tres parámetros aceptan un número entero como entrada.

Consulte el siguiente código.

x = ["my", "unlimited", "sadness"]
for i in range(len(x) - 1, -1, -1):
    print(i, x[i])

Producción :

3 sadness
2 unlimited
1 my

Por lo tanto, como se muestra arriba, podemos recorrer la secuencia en orden inverso con el índice original de la secuencia.

Utilice el bucle for para recorrer una lista en orden inverso en Python

Podemos recorrer una lista en orden inverso en Python usando el bucle for. Repite una secuencia que puede ser lista, tupla, cadena, etc.

Podemos usarlo para recorrer una lista en orden inverso, como se muestra a continuación.

x = ["my", "unlimited", "sadness"]
for item in x[::-1]:
    print(item)

Producción :

sadness
unlimited
my

Tenga en cuenta que [::-1] en el código anterior solo divide la lista en reversa solo para el bucle. Por lo tanto, no altera ni modifica el array de datos o la lista proporcionada de forma permanente.

Artículo relacionado - Python List