dizionario python

Per ordinare un dizionario per valore in Python puoi usare la funzione sorted(). La funzione sorted() di Python può essere utilizzata per ordinare i dizionari per chiave, il che consente un metodo di ordinamento personalizzato. sorted() accetta tre argomenti: oggetto, chiave e reverse.

I dizionari sono strutture dati non ordinate. Usano una struttura di mappatura per memorizzare i dati. I dizionari associano le chiavi ai valori, creando coppie che contengono dati correlati.

Utilizzando il metodo Python sorted(), puoi ordinare i contenuti di un dizionario per valore. Ad esempio, per classificare la popolarità degli elementi in un menu del caffè o elencarli in ordine alfabetico, puoi utilizzare il metodo sorted() di Python. Questo tutorial discuterà come funziona il metodo sorted() e come puoi usarlo per ordinare i contenuti di un dizionario.

Python sorted() Refresher

La funzione sorted() incorporata in Python può essere utilizzata per ordinare gli oggetti iterabili in base a una chiave, come elenchi, tuple e dizionari. La funzione sorted() ordina gli elementi dell’oggetto iterabile specificato e crea un nuovo oggetto con i valori appena ordinati.

Ecco la sintassi per sorted() method:

sorted(oggetto, chiave, reverse)

Il metodo accetta tre parametri:

  • oggetto: l’oggetto iterabile che si desidera ordinare (richiesto)
  • chiave: la funzione che consente di eseguire operazioni di ordinamento personalizzate (opzionale)
  • reverse: specifica se l’oggetto deve essere ordinato in ordine decrescente (opzionale)

Come puoi vedi, "oggetto" è l’unico parametro richiesto. Se decidi di non utilizzare i parametri opzionali "key" e "reverse", Python ordinerà automaticamente l’oggetto in ordine crescente.

L’81% dei partecipanti ha dichiarato di sentirsi più sicuro delle proprie prospettive di lavoro nel settore tecnologico dopo aver partecipato a un bootcamp. Fatti abbinare a un bootcamp oggi.

Il laureato medio del bootcamp ha trascorso meno di sei mesi nella transizione di carriera, dall’avvio di un bootcamp alla ricerca del primo lavoro.

Nota: Python.Engineering ha scritto un guida completa sui metodi sort() e sorted() in Python. Se stai cercando di saperne di più su questo metodo e sul parametro key, dai un’occhiata al nostro tutorial su Python sort().

Facciamo un rapido esempio per illustrare come funziona il metodo sorted().

Di che gestiamo una caffetteria e desideriamo recuperare un elenco alfabetico dei nostri clienti (fedeltà) del Coffee Club. Abbiamo già un elenco di clienti, ma è ordinato per data di iscrizione. Potremmo usare il seguente codice per ordinare la nostra lista:

Il nostro code ordina l’array customers e restituisce quanto segue:

[’Alexandria Kidd’, ’Darius Rowland’, ’Isaac Borthwick’, ’Kaley Fernandez’ ]

Nella prima riga del nostro codice, dichiariamo un elenco che memorizza i nomi dei nostri clienti; questo elenco si chiama: clienti. Quindi, usiamo il sorted() metodo per ordinare l’elenco dei nomi dei clienti in ordine crescente; questo nuovo elenco si chiama: sorted_customers. Infine, stampiamo l’elenco appena ordinato sulla console utilizzando la funzione print().

Ordina un dizionario per valore

Facciamo’ diciamo che hai un dizionario e vuoi ordinarlo per coppie chiave-valore. Puoi farlo usando due funzioni insieme: items() e sorted().

The items( ) consente di recuperare gli elementi in un dizionario. Possiamo usare questa funzione in combinazione con la funzione sorted() e un parametro key personalizzato per ordinare un dizionario per valore. Considera i due esempi seguenti.

Esempio 1: ordinamento in ordine decrescente

Torniamo al bar. Supponiamo di avere un dizionario che memorizzi gli articoli sul nostro menu del caffè e quanti di ogni articolo sono stati ordinati nell’ultimo mese. Vogliamo vedere qual è stato il caffè più popolare il mese scorso, quindi decidiamo di ordinare il dizionario dell’ordine in ordine decrescente di valori.

Ecco un programma che potremmo usare per ordinare i contenuti del nostro dizionario per valore:

Il nostro codice restituisce quanto segue:

espresso 72

latte 56

cappuccino 54

americano 48

cortado 41

Ci sono molte cose nel nostro codice , quindi analizziamolo.

All’inizio del nostro codice, definiamo un dizionario chiamato ordini che memorizza i nomi dei caffè come chiavi e il numero venduto come valori.

"Il Karma di carriera è entrato nella mia vita quando ne avevo più bisogno e mi ha aiutato rapidamente ad abbinarlo a un bootcamp. Due mesi dopo la laurea, ho trovato il lavoro dei miei sogni in linea con i miei valori e obiettivi nella vita!"

Venus, Software Engineer presso Rockbot

Quindi, usiamo il metodo sorted() per ordinare il dizionario orders in base al valore. Ecco una ripartizione di come abbiamo usato sorted() metodo:

ParametroTestoDescrizione
oggettoorders.items() Fa riferimento a tutti i valori nel nostro dizionario "orders". Se dovessimo usare solo "orders", dovremmo fare riferimento alla posizione dell’indice di l’elemento per ottenere il suo valore individuale, mentre se usiamo order.items(), viene creato un elenco iterabile con gli elementi in un elenco.
chiave
keykey=lambda x: x[1]Un meccanismo di ordinamento che ci consente di ordina il nostro dizionario per valore. Questo è un esempio di una funzione Lambda, che è una funzione senza nome.
reversereverse=TrueAfferma che vogliamo che i nostri dati siano ordinati in ordine decrescente.

Infine, creiamo un Ciclo for che scorre ogni elemento creato nel nostro metodo sort_order e stampa sia il nome della chiave che il valore, ordinati nell’ordine specificato in sort_order< funzione /code>.

Esempio 2: Ordina in ordine crescente

Analogamente, se volessimo scoprire la bevanda meno popolare venduta nella nostra caffetteria, potremmo usare lo stesso codice di sopra ma senza il parametro reverse=True. Ecco un esempio del codice per questo:

Quando eseguiamo il nostro codice, vengono restituiti i seguenti valori:

cortado 41

americano 48

cappuccino 54

latte 56

espresso 72

Come puoi vedere, il nostro codice ha restituito un elenco di voci disposte in ordine crescente, in base al numero di ogni articolo ordinato nell’ultimo mese.

Comprensione delle liste

Inoltre, possiamo usare la comprensione delle liste per ordinare i contenuti del dizionario in base al valore. La comprensione delle liste è una tecnica concisa per creare liste in Python e puoi risparmiare spazio se stanno creando metodi di ordinamento più complessi.

Ecco il codice che useremmo per ordinare i nostri ordini di caffè in ordine crescente in base al numero di ciascun caffè ordinato utilizzando la comprensione dell’elenco:

Quando eseguiamo il nostro codice, viene restituita la seguente risposta:

cortado 41

americano 48

cappuccino 54

latte 56

espresso 72

Il risultato del nostro codice è stato lo stesso dell’esempio precedente in cui abbiamo ordinato i contenuti dell’elenco ordiniin ordine crescente. Ma invece di definire una variabile sort_orders e creare un ciclo separato for per scorrere l’elenco ordinato, abbiamo creato un elenco utilizzando la tecnica di comprensione dell’elenco.

La comprensione dell’elenco che abbiamo creato sopra ordina ogni elemento nel nostro elenco in ordine crescente, quindi stampa la chiave e il valore di ogni elemento del dizionario nella console.

Conclusione

Quando lavori con i dizionari in Python, ordinare un dizionario per valore è un’operazione comune. Il metodo sorted() ti consente di ordinare un insieme di dati in base alle tue esigenze.

Questo tutorial ha discusso, fornendo esempi, su come utilizzare il metodo sorted () per ordinare un dizionario per valore in Python, incluso come utilizzare la chiave e i parametri reverse .

Ora sei pronto per iniziare a ordinare i dizionari per valore come un professionista di Python!