Come scorrere un dizionario in Python (chiavi, valori ed elementi)

Scopri come eseguire il looping o l'iterazione di un dizionario Python. Scopri metodi per eseguire il loop su chiavi, valori e coppie chiave-valore con esempi puliti ed eseguibili.

Prova questa soluzione nell'editor

Panoramica

L'iterazione sui dizionari è un compito fondamentale nella programmazione Python, poiché i dizionari sono ampiamente utilizzati per archiviare dati chiave-valore come record di database, payload API e impostazioni di configurazione. Python fornisce diversi metodi intuitivi e integrati per esplorare i dizionari a seconda che siano necessarie le chiavi, i valori o entrambi. Comprendere questi metodi è fondamentale per scrivere codice pulito, efficiente e leggibile.

Il modo più comune per scorrere simultaneamente chiavi e valori è utilizzare il metodo `.items()`. Questo metodo restituisce un oggetto vista contenente tuple di coppie chiave-valore, che possono essere facilmente scompattate direttamente all'interno di un'istruzione del ciclo `for`. Questo è generalmente preferito rispetto all'iterazione delle chiavi e alla ricerca manuale dei valori, poiché è più leggibile e più efficiente.

Se hai solo bisogno di chiavi, puoi eseguire il loop direttamente sul dizionario stesso o utilizzare esplicitamente il metodo `.keys()`. Per eseguire l'iterazione solo sui valori, Python fornisce il metodo `.values()`. Entrambi questi oggetti vista sono dinamici, riflettono qualsiasi modifica apportata al dizionario e supportano il test di appartenenza utilizzando l'operatore "in".

Codice e output di esecuzione

Questo codice illustra l'iterazione su chiavi, valori e coppie chiave-valore di un dizionario.

iterate_dict.py
Prova nell'editor
user = {"username": "alice", "role": "admin", "active": "True"}

# 1. Iterate over keys and values using items()
print("--- Keys and Values ---")
for key, value in user.items():
    print(f"{key}: {value}")

# 2. Iterate over keys only (default behavior)
print("\n--- Keys Only ---")
for key in user:
    print("Key:", key)

# 3. Iterate over values only
print("\n--- Values Only ---")
for val in user.values():
    print("Value:", val)
Uscita terminale
--- Keys and Values ---
username: alice
role: admin
active: True

--- Keys Only ---
Key: username
Key: role
Key: active

--- Values Only ---
Value: alice
Value: admin
Value: True

Implementazione passo dopo passo

  • Utilizza user.items() in un ciclo for per estrarre e decomprimere contemporaneamente chiavi e valori.
  • Passa direttamente al dizionario (o chiama .keys()) per scorrere solo i tasti.
  • Utilizzare .values() per isolare e scorrere i valori del dizionario.

Domande frequenti

L'ordine di inserimento viene conservato durante l'iterazione su un dizionario?

Sì, a partire daPython 3.7+, è garantito che i dizionari mantengano l'ordine di inserimento delle chiavi.

È possibile modificare un dizionario durante l'iterazione su di esso?

No, la modifica delle chiavi (aggiunta o eliminazione) durante l'iterazione solleverà un RuntimeError. Modifica invece una copia di chiavi o valori.

Argomenti correlati

Risorse Python consigliate

Espandi le tue conoscenze con tutorial interattivi, foglietti illustrativi e confronti di codici correlati.