Python è un linguaggio di programmazione generico ampiamente utilizzato. Le ragioni principali della popolarità di Python sono la sua semplice sintassi, i moduli integrati e le funzioni che ti consentono di eseguire potenti attività. La funzione sort() è una funzione incorporata in Python che ordina gli elementi in un elenco, in ordine crescente per impostazione predefinita. Puoi anche usare la funzione sort() per ordinare gli elementi in ordine decrescente o definire i criteri di ordinamento. In questo articolo, la funzione sort() è spiegata in dettaglio con alcuni semplici esempi.
Sintassi della funzione sort()
La sintassi della funzione sort() è la seguente:
list_obj.sort (reverse = "", chiave = "")Entrambi i parametri all'interno della funzione sort() sono opzionali. Il parametro reverse viene utilizzato per ordinare l'elenco in ordine decrescente. Se "reverse=true", l'elenco verrà ordinato in ordine decrescente; altrimenti, "reverse=false" per impostazione predefinita. Il parametro “chiave” specifica la funzione che definisce i criteri di ordinamento. La funzione sort() non cambia l'ordine degli elementi nell'oggetto elenco originale; piuttosto, crea una copia dell'oggetto elenco con elementi ordinati e lo restituisce come output.
Esempi di funzione sort()
I seguenti esempi coprono l'utilizzo della funzione sort() in maggior dettaglio.
Esempio 1: ordinamento di un elenco di stringhe
La funzione sort() ordina elenchi di stringhe, interi e numeri in virgola mobile. In questo primo esempio, ordineremo il seguente elenco di stringhe in ordine crescente utilizzando la funzione sort().
#dichiarare una lista di studentistudente = ['Mark','John','Taylor','Donald','Joseph','Albert','Cameron']
print("L'elenco originale è: ")
stampa (studente)
#ordinare la lista
#usando la funzione sort()
alunno.ordinare()
print("L'elenco ordinato è: ")
stampa (studente)
Produzione
Come puoi vedere, l'elenco è stato ordinato con successo.
Successivamente, ordineremo l'elenco degli elementi stringa in ordine decrescente. In questo caso, il valore inverso è uguale a "vero."
#dichiarare una lista di studentistudente = ['Mark','John','Taylor','Donald','Joseph','Albert','Cameron']
print("L'elenco originale è: ")
stampa (studente)
#ordinare la lista
#usando la funzione sort() con il parametro reverse
alunno.sort (inverso = vero)
print("L'elenco ordinato è: ")
stampa (studente)
Produzione
In questo esempio, ordineremo l'elenco degli alfabeti vocalici rispettivamente in ordine crescente e decrescente.
#dichiarare una lista di studentimia_lista = ['i','u','a','o','e']
print("L'elenco originale è: ")
stampa(mia_lista)
#ordinare l'elenco in ordine crescente
#usando la funzione sort()
la mia lista.ordinare()
print("L'elenco ordinato in ordine crescente: ")
stampa(mia_lista)
#ordinare l'elenco in ordine decrescente
la mia lista.sort (inverso = vero)
print("L'elenco ordinato in ordine decrescente: ")
stampa(mia_lista)
Produzione
Ora ordineremo l'elenco in base alla lunghezza di ciascun elemento. La funzione funclen() controlla l'elenco di ogni elemento e lo restituisce. La funzione sort() ordina quindi gli elementi nell'elenco in base alla lunghezza di ciascun elemento, con gli elementi con la lunghezza più breve che vengono prima nell'elenco ordinato.
#dichiarare una funzionedef funcLen(ele):
ritorno len(ele)
#dichiarare una lista di animali
my_list = ['Capra','Gatto','Elefante','Coccodrillo','Coniglio','Rinoceronte']
print("L'elenco originale è: ")
stampa(mia_lista)
#ordinare la lista usando la funzione funcLen
la mia lista.sort(key=funcLen)
print("L'elenco ordinato è: ")
stampa(mia_lista)
Produzione
Per ordinare gli elementi in modo che vengano prima gli elementi di lunghezza maggiore, il valore del parametro inverso deve essere "vero"."
#dichiarare una funzionedef funcLen(ele):
ritorno len(ele)
#dichiarare una lista di animali
my_list = ['Capra','Gatto','Elefante','Coccodrillo','Coniglio','Rinoceronte']
print("L'elenco originale è: ")
stampa(mia_lista)
#ordinare una lista usando la funzione funcLen
la mia lista.sort(reverse=True,key=funcLen)
print("L'elenco ordinato è: ")
stampa(mia_lista)
Produzione
Esempio 2: ordinamento di un elenco di numeri interi
La funzione sort() può anche ordinare un elenco di numeri interi in ordine crescente o decrescente.
Nell'esempio seguente, dichiareremo un elenco di numeri interi e lo ordineremo in ordine crescente e decrescente.
#dichiarare un elenco di numeri interilistanum = [10,9,2,3,1,4,5,8,7]
#stampare la lista originale
print("L'elenco originale è: ")
print(elenconum)
#ordinare l'elenco in ordine crescente
listanum.ordinare()
#stampare l'elenco ordinato in ordine crescente
print("L'elenco ordinato in ordine crescente: ")
print(elenconum)
#ordinare l'elenco in ordine crescente
listanum.sort (inverso = vero)
#stampare l'elenco ordinato in ordine decrescente
print("L'elenco ordinato in ordine decrescente: ")
print(elenconum)
Produzione
L'elenco dei numeri interi è stato ora ordinato in ordine crescente e decrescente.
Esempio 3: ordinamento di un elenco di numeri in virgola mobile
La funzione sort() è applicabile anche a un elenco di numeri in virgola mobile.
Nell'esempio seguente, ordineremo un elenco di numeri in virgola mobile sia in ordine crescente che decrescente.
#dichiarare un elenco di numeri interilistanum = [1.5,1.2,4.5,10.6,11.5,3.3,3.83,3.85]
#stampare la lista originale
print("L'elenco originale è: ")
print(elenconum)
#ordinare l'elenco in ordine crescente
listanum.ordinare()
#stampare l'elenco ordinato in ordine crescente
print("L'elenco ordinato in ordine crescente: ")
print(elenconum)
#ordinare l'elenco in ordine crescente
listanum.sort (inverso = vero)
#stampare l'elenco ordinato in ordine decrescente
print("L'elenco ordinato in ordine decrescente: ")
print(elenconum)
Produzione
L'elenco dei numeri in virgola mobile è stato ora ordinato in ordine crescente e decrescente.
Esempio 4: ordinamento di un elenco di voci del dizionario
Un dizionario può essere posizionato all'interno di una lista come elemento.
Nell'esempio seguente, ordineremo gli elementi del dizionario in un elenco durante la creazione di un dizionario di studenti. Ordineremo gli elementi in base ai loro valori di età.
# Una funzione che restituisce il valore 'anno':def ageFunc(ele):
ritorna ele['età']
#dichiarare un elenco di dizionari studenteschi
studenti = [
'nome': 'Mark', 'email':'[email protected]' ,'età': 28,
'nome': 'John', 'email':'[email protected]' ,'età': 23,
'nome': 'Albert', 'email':'[email protected]' ,'età': 21,
'nome': 'Cameron', 'email':'[email protected]' ,'età': 27,
'nome': 'Taylor', 'email':'[email protected]' ,'età': 25
]
#ordinare la lista
studenti.sort(key=ageFunc)
#stampare l'elenco ordinato
stampa (studenti)
Produzione
Conclusione
La funzione sort() è una funzione incorporata in Python che ordina un elenco di elementi. La funzione sort() può accettare due parametri opzionali, i.e., retromarcia e chiave. Questo articolo ha spiegato in dettaglio come utilizzare la funzione sort() di Python con vari esempi.