Python Itera la lista all'indietro

Niket Gandhir 12 luglio 2021
  1. Usa la funzione reversed() per attraversare un elenco in ordine inverso in Python
  2. Usa la funzione range() per attraversare un elenco in ordine inverso in Python
  3. Usa il cicli for per attraversare un elenco in ordine inverso in Python
Python Itera la lista all'indietro

Questo tutorial discuterà vari metodi disponibili per attraversare un elenco in ordine inverso in Python.

Usa la funzione reversed() per attraversare un elenco in ordine inverso in Python

Possiamo attraversare un elenco in Python in ordine inverso utilizzando la funzione incorporata reversed() disponibile. La funzione reversed() restituisce l’iterazione inversa della sequenza fornita come input.

La funzione reversed() accetta un singolo parametro, che è la sequenza da invertire. La sequenza può essere una tupla, una stringa, un elenco, un intervallo, ecc.

Per esempio,

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

Produzione:

my
sadness
unlimited

Tuttavia, per accedere anche all’indice originale della sequenza, possiamo utilizzare ulteriormente la funzione enumerate() sulla nostra lista prima di passarla alla funzione reversed().

Vedere il seguente codice.

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

Produzione:

2 sadness
1 unlimited
0 my

Quindi, otteniamo l’output con l’indice originale della sequenza. Tuttavia, vale la pena notare che enumerate() restituisce un generatore e i generatori non possono essere invertiti. Pertanto, è fondamentale convertirlo prima in un elenco.

Usa la funzione range() per attraversare un elenco in ordine inverso in Python

Un altro metodo per attraversare una sequenza in ordine inverso in Python è utilizzare la funzione range disponibile.

La funzione range disponibile in Python restituisce una sequenza di numeri, a partire da 0 per impostazione predefinita, che si incrementa automaticamente di un ulteriore 1 (per impostazione predefinita).

La funzione range accetta tre diversi parametri - start (opzionale), stop (obbligatorio), step (opzionale). Tutti e tre i parametri accettano un numero intero come input.

Vedere il seguente codice.

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

Produzione:

3 sadness
2 unlimited
1 my

Quindi, come mostrato sopra, possiamo attraversare la sequenza in ordine inverso con l’indice originale della sequenza.

Usa il cicli for per attraversare un elenco in ordine inverso in Python

Possiamo attraversare una lista in ordine inverso in Python usando il cicli for. Itera su una sequenza che può essere lista, tupla, stringa, ecc.

Possiamo usarlo per attraversare un elenco in ordine inverso, come mostrato di seguito.

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

Produzione:

sadness
unlimited
my

Nota che [::-1] nel codice sopra taglia solo la lista al contrario solo per il bucle. Pertanto, non altera o modifica l’array di dati o la lista fornito in modo permanente.

Articolo correlato - Python List