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.
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.
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)--- Keys and Values ---
username: alice
role: admin
active: True
--- Keys Only ---
Key: username
Key: role
Key: active
--- Values Only ---
Value: alice
Value: admin
Value: TrueImplementazione 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
Scopri come creare un dizionario in Python. Comprendere la sintassi letterale, il costruttore dict, la comprensione dei dict e gli inizializzatori di valori-chiave.
Come aggiungere e aggiornare le chiavi in un dizionario PythonScopri come aggiungere elementi o aggiornare coppie chiave-valore in un dizionario Python. Esplora le parentesi quadre, il metodo di aggiornamento e le opzioni degli operatori di unione.
Risorse Python consigliate
Espandi le tue conoscenze con tutorial interattivi, foglietti illustrativi e confronti di codici correlati.
Cicli Python
Scopri come utilizzare i loop Python per eseguire iterazioni sui dati. Padroneggia le best practice sui cicli for, while, interruzione, continua e loop con esempi interattivi.
Foglio informativo sui metodi del dizionario Python
Impara i metodi del dizionario Python. Guida di riferimento completa per inserimenti, recuperi, aggiornamenti e controlli di coppie chiave-valore.
Python vs JavaScript: quale linguaggio di programmazione è il migliore?
Un confronto completo tra Python e JavaScript. Esplora le differenze di sintassi, le prestazioni, i casi d'uso (backend e frontend) ed esempi di codifica.