Ordina l'elenco nidificato in Python

Ordina l'elenco nidificato in Python

Generalmente, l'ordinamento di un elenco nidificato in Python aiuta a organizzare i dati e semplificare il trattamento e l'analizzazione. È possibile utilizzare questa funzionalità per ordinare un elenco di dizionari rispetto a un valore particolare, ordinare un nido di tuple in base a un elemento specifico di ciascuna tupla o ordinare un elenco di elenchi. Inoltre, l'ordinamento degli elenchi nidificati migliora anche l'esperienza dell'utente quando i dati ordinati vengono presentati agli utenti finali.

Questo blog coprirà i seguenti approcci:

  • Metodo 1: Ordina l'elenco nidificato in Python usando il metodo "Ord ()"
  • Metodo 2: Ordina l'elenco nidificato in Python usando il metodo "Ordined ()"
  • Metodo 3: ordinamento nidificato in Python in base alla lunghezza

Metodo 1: Ordina l'elenco nidificato in Python usando il metodo "Ord ()"

"ordinare()"È un metodo integrato Python che ordina automaticamente elementi in un elenco nidificato in un ordine ascendente. Tuttavia, può essere utilizzato per l'ordinamento degli elementi in ordine decrescente o in base ai criteri specificati.

Sintassi

Per usare il "ordinare()"Metodo in Python, segui la sintassi data:

Elenco.Ordina (reverse = false, key = nessuno)

Qui:

  • "Elenco"Si riferisce all'elenco che vuoi ordinare.
  • "inversione"È un parametro opzionale che accetta un"Falso"Valore booleano per l'ordinamento in ordine crescente e"VERO"Per l'ordine decrescente.
  • "chiave"È anche un altro parametro opzionale utilizzato per definire una funzione di ordinamento personalizzato. Inoltre, specificando il suo valore come "Nessuno"Rappresenta l'ordine di ordinamento predefinito.

Esempio 1: elenco di ordinamento in ordine crescente usando il metodo “Ord ()”

Prima di tutto, definisci una funzione chiamata "Ordinare()"Ciò accetta l'elenco non desiderato come argomento. Poi:

  • IL "Elenco.ordinare()"Il metodo è invocato nell'elenco di input.
  • Questo metodo accetta un "chiave"Parametro che specifica una funzione Lambda. Questo parametro indica il metodo Ord () di utilizzare la funzione Lambda per ottenere l'elenco ordinato di elementi.
  • La funzione Lambda specifica un singolo argomento "l"Che si riferisce a ciascuna tupla nell'elenco e produce il secondo elemento"L [1]", Rappresentando il primo indice della tupla.
  • Si noti che la funzione Lambda assume l'elemento specificato come ordinabile.
  • Infine, la funzione restituisce l'elenco ordinato come output:
DEF Ordina (elenco):
Elenco.ordin (key = lambda l: l [1])
Elenco di restituzione

Successivamente, definisci un elenco nidificato e passalo al "Ordinare()" funzione:

List = [['Zeus', 40], ['Raven', 20], ['Bumblebee', 10], ['Silver Bullet', 50]]
Stampa (ordinamento (elenco))

Si può osservare che l'elenco nidificato è stato risolto in ordine crescente in base ai valori numerici aggiunti:

Metodo 2: Ordina l'elenco nidificato in Python usando il metodo "Ordined ()"

"smistato()"Python funziona abbastanza simile al"ordinare()" metodo. Per impostazione predefinita, ordina anche gli elementi in ordine crescente. Tuttavia, la differenza chiave è che il metodo Ordined () può essere applicato a qualsiasi iterabile, come i dizionari o set. Mentre il metodo Ord () non supporta questa funzionalità.

Sintassi

Dai un'occhiata alla seguente sintassi per utilizzare il "smistato()" metodo:

ordinato (iteble, reverse = false, key = nessuno)

Qui, "iteble"Rappresenta la sequenza di input che si desidera ordinare (un elenco nidificato in questo caso) e"inversione" E "chiave"Sono parametri opzionali come discusso in precedenza.

Esempio

Definire una funzione chiamata "Ordinare()"Che accetta"List1"Come argomento e restituisce l'elenco nidificato ordinato usando il"smistato()" metodo. COME "0"È specificato come il primo indice della tupla, il metodo Ordined () restituirà l'elenco ordinato in base al primo elemento:

defory (list1):
return (Ordined (list1, key = lambda I: i [0]))

Quindi, crea un elenco con gli elementi richiesti e passalo a "Ordinare()" metodo:

List1 = [['Zeus', 10], ['Raven', 20], ['Bumblebee', 50], ['Silver Bullet', 30]]
stampa (ordin (list1))

Come puoi vedere, l'elenco nidificato è stato risolto in ordine alfabetico.

Metodo 3: ordinamento nidificato in Python in base alla lunghezza

Il Python "ordinare()"Il metodo può anche essere utilizzato per ordinare l'elenco nidificato rispetto alla lunghezza. Per farlo, specificare "len"Come valore del"chiave"Parametro come segue:

Elenco.Ordina (chiave = len)

Esempio

Ora, crea un elenco nidificato che comprende ulteriori elenchi numerici. Quindi, invoca il "ordinare()"Metodo e pass"Chiave = len"Come argomenti. Infine, chiama il "stampa()"Funzione per visualizzare il nidificato ordinato elencato sulla console:

List1 = [[5,10,15,20,25], [2,4,6], [10,15,20,25,30,35]]
List1.Ordina (chiave = len)
Stampa (List1)

In questo caso, l'elenco nidificato è stato risolto in base alla lunghezza degli elenchi (in ordine crescente):

Si trattava di ordinare elenchi nidificati in Python.

Conclusione

Per ordinare un elenco nidificato in Python, usa il “ordinare()" o il "smistato()" metodo. L'ordinamento () segue "Ordina (reverse = false, key = nessuno)"Sintassi. Considerando che, per utilizzare il metodo Ordined (), il "ordinato (iteble, reverse = false, key = nessuno)"La sintassi può essere utilizzata. Entrambi questi metodi possono ordinare un elenco nidificato in ordine crescente o decrescente o rispetto all'indice della tupla. Questo blog ha offerto approcci diversi per l'ordinamento delle liste di nidificazione in Python.