Dizionari
Cosa sono i dizionari?
Sezione intitolata “Cosa sono i dizionari?”Un dizionario è una raccolta di informazioni organizzate in coppie chiave → valore.
Puoi pensarlo come un vocabolario: cerchi una parola (la chiave) e ottieni la definizione (il valore). Una rubrica telefonica usa lo stesso principio.
"nome" → "Alice""eta" → 16"citta" → "Roma"Creare un dizionario
Sezione intitolata “Creare un dizionario”I dizionari usano le parentesi graffe {} e coppie "chiave": valore separate da virgole:
studente = { "nome": "Alice", "eta": 16, "classe": "3A"}
vuoto = {} # dizionario senza elementiAccedere a un valore
Sezione intitolata “Accedere a un valore”Indichi la chiave tra parentesi quadre:
studente = {"nome": "Alice", "eta": 16, "classe": "3A"}
print(studente["nome"]) # Aliceprint(studente["eta"]) # 16Se la chiave non esiste, l’accesso con le parentesi quadre causa un errore. .get() restituisce invece None o un valore predefinito:
print(studente.get("cognome")) # None: nessun erroreprint(studente.get("cognome", "N/D")) # N/D: valore di defaultAggiungere e modificare
Sezione intitolata “Aggiungere e modificare”I dizionari sono modificabili. Assegnando un valore a una chiave esistente lo sostituisci; usando una chiave nuova aggiungi una coppia:
studente = {"nome": "Alice", "eta": 16}
studente["eta"] = 17 # modifica il valore esistentestudente["cognome"] = "Rossi" # aggiunge una nuova coppia
print(studente)# {'nome': 'Alice', 'eta': 17, 'cognome': 'Rossi'}Rimuovere elementi
Sezione intitolata “Rimuovere elementi”studente = {"nome": "Alice", "eta": 16, "classe": "3A"}
del studente["classe"] # elimina la coppia "classe"print(studente) # {'nome': 'Alice', 'eta': 16}
eta = studente.pop("eta") # rimuove e restituisce il valoreprint(eta) # 16print(studente) # {'nome': 'Alice'}Strumenti utili
Sezione intitolata “Strumenti utili”persona = {"nome": "Alice", "eta": 16, "citta": "Roma"}
# Tutte le chiaviprint(persona.keys()) # dict_keys(['nome', 'eta', 'citta'])
# Tutti i valoriprint(persona.values()) # dict_values(['Alice', 16, 'Roma'])
# Tutte le coppie chiave-valoreprint(persona.items()) # dict_items([('nome', 'Alice'), ('eta', 16), ('citta', 'Roma')])
# Verificare se una chiave esisteprint("nome" in persona) # Trueprint("cognome" in persona) # FalseScorrere un dizionario
Sezione intitolata “Scorrere un dizionario”persona = {"nome": "Alice", "eta": 16, "citta": "Roma"}
# Solo le chiavifor chiave in persona: print(chiave) # nome, eta, citta
# Chiavi e valori insiemefor chiave, valore in persona.items(): print(f"{chiave}: {valore}")Output:
nome: Aliceeta: 16citta: RomaDizionari dentro dizionari
Sezione intitolata “Dizionari dentro dizionari”I valori possono essere di qualsiasi tipo, compresi altri dizionari. Puoi così rappresentare strutture annidate:
classe = { "Alice": {"eta": 16, "voto": 8}, "Bob": {"eta": 17, "voto": 7}}
print(classe["Alice"]["voto"]) # 8print(classe["Bob"]["eta"]) # 17