Metodi su Dizionari

I dizionari forniscono un insieme di metodi, riassunti nella tabella seguente. Maggiori dettagli posso essere trovati nella Python Documentation.

Metodi Parametri Descrizione
keys none Ritorna una vista delle chiavi nel dizionario
values none Ritorna una vista dei valori nel dizionario
items none Ritorna una vista delle coppie chiave-valore
get key Ritorna il valore associato a una chiave; None altrimenti
get key,alt Ritorna il valore associato a una chiave; alt altrimenti

Il metodo keys ritorna ciò che Python 3 chiama vista delle chiavi. Possiamo iterare sulla vista o trasformare la vista in una lista usando la funzione di conversione list.




(chp12_dict6)

E’ così comune iterare sulle chiavi in un dizionario che si può omettere la chiamata al metodo keys nel ciclo for — iterando implicitamente sulle chiavi del dizionario.




(chp12_dict7)

Come abbiamo visto precedentemente con le stringhe e le liste, i metodi usano la notazione punto, che specifica il nome di un metodo a destra del punto e il nome dell’oggetto a cui si applicano a sinistra del punto. La parentesi vuota nel caso di keys indica che il metodo non prende parametri.

I metodi values e items sono a simili a keys. Ritornano una vista degli oggetti che possono essere trasformate in liste o su cui o è possibile iterare direttamente. Notiamo che gli elementi sono ritornati come tuple contenenti la chiave e il valore associato.




(chp12_dict8)

Nota che le tuple sono spesso utili per ottenere sia la chiave che il valore mentre stiamo scorrendo le coppie del dizionario. I due cicli fanno la stessa cosa.

Gli operatori in e not in possono controllare se una chiave è nel dizionario:




(chp12_dict9)

Questo operatore è molto utile dal momento che riferirsi a una chiave che non esiste genera un errore di esecuzione.

Il metodo get ci permette di accedere al valore associato a una chiave, in modo simile all’operatore [ ]. La differenza importante è che get non causa un errore di esecuzione se la chiave non è presente, ritornando invece None. Esiste una variazione di get che permette di avere un secondo parametro che specifica il valore di ritorno qualora la chiave non sia presente, come mostrato nell’esempio seguente.




(chp12_dict10)

Note

This workspace is provided for your convenience. You can use this activecode window to try out anything you like.




(scratch_11_02)

Next Section - Alias e Copie