La funzione reversed in python

Nel linguaggio python la funzione reversed inverte l'ordine degli elementi in un oggetto iterabile.

reversed(x)

Dove l'argomento x è un oggetto iterabile qualsiasi ( lista, tupla, stringa, ecc. ).

La funzione scorre e legge l'oggetto iterabile al contrario, secondo l'ordine inverso, dall'ultimo al primo elemento.

Attenzione. La funzione reversed non effettua l'ordinamento decrescente ma si limita a leggere gli elementi a partire dall'ultimo. Quindi, per fare l'ordinamento decrescente di un oggetto iterabile è necessario prima elaborare l'ordinamento crescente dell'oggetto con la funzione sorted() ossia scrivendo reversed(sorted(x))

Un esempio pratico

Apro l'interprete di python e definisco una stringa.

stringa="1234"

Poi utilizzo la funzione reversed per scorrere la lista al contrario la lista

for i in reversed(stringa):
print(i)

Lo script restituisce in output il seguente risultato:

4
3
2
1

La funzione scorre gli elementi seguendo l'ordine decrescente.

Come fare l'ordinamento decrescente

Per ordinare una qualsiasi oggetto iterabile in ordine decrescente, è sufficiente ordinare prima l'oggetto.

reversed(sorted(x))

Dove l'argomento x è una stringa, una tupla o una lista.

Un esempio pratico

Se la stringa è la seguente

stringa="2143"

La funzione reversed restituirebbe la stringa inversa "3412".

Per ordinarla in modo decrescente utilizzo la funzione composta reversed(sorted())

for i in reversed(sorted(stringa)):
print(i)

Come funziona?

La funzione sorted ordina gli elementi secondo l'ordine crescente ( "1234" ) mentre la funzione reversed ne inverte l'ordine ( "4321").

Il risultato finale in output è il seguente:

4
3
2
1

Ho così ordinato gli elementi dell'oggetto in ordine decrescente

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

L'ordinamento ( sort ) in python