Skip to content

Dizionari e Set

Basato su: Manuale Python per principianti (freeCodeCamp)


  • ✅ Creare e manipolare dizionari (chiave-valore)
  • ✅ Usare set e operazioni su insiemi
  • ✅ Scegliere la struttura dati giusta

  • Creare dizionari e accedere ai valori
  • Usare i metodi principali dei dizionari
  • Iterare su chiavi, valori e coppie

Contenuti (dal manuale, sezione “Dizionari in Python”)

Section titled “Contenuti (dal manuale, sezione “Dizionari in Python”)”
  1. Creazione: {"nome": "Mario", "eta": 25}, dict()
  2. Accesso: d["chiave"], d.get("chiave", default)
  3. Aggiungere/modificare: d["nuova"] = "valore"
  4. Eliminare: del d["chiave"], .pop("chiave")
  5. Metodi:
    • .keys() — tutte le chiavi
    • .values() — tutti i valori
    • .items() — coppie (chiave, valore)
    • .update() — unire due dizionari
  6. Iterare su dizionari
# Creazione
studente = {
"nome": "Alice",
"eta": 22,
"corso": "Informatica",
"voti": [28, 30, 25]
}
# Accesso
print(studente["nome"])
print(studente.get("indirizzo", "Non presente"))
# Iterazione
for chiave, valore in studente.items():
print(f"{chiave}: {valore}")
# .get() sicuro
print(studente.get("telefono", "Non disponibile"))
  • Manuale → sezione Dizionari in Python

  • Creare set e operare con insiemi
  • Usare unioni, intersezioni, differenze

Contenuti (dal manuale, sezione “Set in Python”)

Section titled “Contenuti (dal manuale, sezione “Set in Python”)”
  1. Creazione: {1, 2, 3}, set([1, 2, 3])
  2. Set = insieme: elementi unici, non ordinati
  3. Aggiungere/rimuovere: .add(), .remove(), .discard()
  4. Operazioni tra insiemi:
    • Unione: a | b o a.union(b)
    • Intersezione: a & b o a.intersection(b)
    • Differenza: a - b o a.difference(b)
    • Differenza simmetrica: a ^ b
  5. Verifiche: in, issubset(), issuperset()
# Set da lista (rimuove duplicati automaticamente)
numeri = [1, 2, 2, 3, 3, 3, 4]
unici = set(numeri)
print(unici) # {1, 2, 3, 4}
# Operazioni tra insiemi
a = {1, 2, 3, 4}
b = {3, 4, 5, 6}
print(a | b) # Unione: {1, 2, 3, 4, 5, 6}
print(a & b) # Intersezione: {3, 4}
print(a - b) # Differenza: {1, 2}
print(a ^ b) # Diff. simmetrica: {1, 2, 5, 6}
# Verifica
print(2 in a) # True
  • Manuale → sezione Set in Python

📅 Lezione 3 — Scegliere la struttura giusta

Section titled “📅 Lezione 3 — Scegliere la struttura giusta”

Confronto tra liste, tuple, set, dizionari

Section titled “Confronto tra liste, tuple, set, dizionari”
CaratteristicaListaTuplaSetDizionario
Mutabile?
Ordinato?✅ (3.7+)
Elementi unici?Chiavi uniche
Accesso perIndiceIndiceChiave
Sintassi[ ]( ){ }{k:v}
  • Lista: sequenza ordinata, elementi ripetibili
  • Tupla: dati immutabili, coordinate, hashable
  • Set: rimuovere duplicati, operazioni insiemistiche
  • Dizionario: associazioni chiave-valore, lookup veloci

"""
ESERCIZIO 1: Rubrica telefonica
Crea un dizionario rubrica con 3 contatti
(nome → numero di telefono).
Aggiungi un contatto, rimuovine uno,
stampa tutti i contatti.
"""
"""
ESERCIZIO 2: Duplicati
Data una lista [1, 2, 2, 3, 4, 4, 4, 5],
usa un set per trovare:
- Elementi unici
- Elementi duplicati
"""
"""
ESERCIZIO 3: Studenti
Crea:
- lista_studenti = ["Anna", "Marco", "Anna", "Luca", "Marco"]
- set_studenti = set(lista_studenti)
- Un dizionario con nome → numero di presenze
"""

DomandaRisposta
Come si accede a un valore in un dict?d["chiave"] o d.get("chiave")
Come si iterano chiave+valore?for k, v in d.items():
Differenza tra set e lista?Set: elementi unici, non ordinato
Unione di due set?a | b o a.union(b)
Intersezione di due set?a & b o a.intersection(b)
Come si rimuovono duplicati da una lista?list(set(lista))