Comment parcourir un dictionnaire en Python (clés, valeurs et éléments)

Apprenez à parcourir ou parcourir un dictionnaire Python. Découvrez des méthodes pour parcourir des clés, des valeurs et des paires clé-valeur avec des exemples clairs et exécutables.

Essayez cette solution dans l'éditeur

Aperçu

L'itération sur les dictionnaires est une tâche fondamentale dans la programmation Python, car les dictionnaires sont largement utilisés pour stocker des données clé-valeur telles que des enregistrements de base de données, des charges utiles d'API et des paramètres de configuration. Python fournit plusieurs méthodes intuitives et intégrées pour parcourir les dictionnaires selon que vous avez besoin des clés, des valeurs ou des deux. Comprendre ces méthodes est crucial pour écrire du code propre, efficace et lisible.

La manière la plus courante de parcourir simultanément les clés et les valeurs consiste à utiliser la méthode `.items()`. Cette méthode renvoie un objet de vue contenant des tuples de paires clé-valeur, qui peuvent être facilement décompressées directement dans une instruction de boucle « for ». Ceci est généralement préféré à l’itération des clés et à la recherche manuelle des valeurs, car cela est à la fois plus lisible et plus efficace.

Si vous n'avez besoin que de clés, vous pouvez effectuer une boucle directement sur le dictionnaire lui-même ou utiliser explicitement la méthode `.keys()`. Pour parcourir uniquement les valeurs, Python fournit la méthode `.values()`. Ces deux objets de vue sont dynamiques, reflétant toutes les modifications apportées au dictionnaire et prennent en charge les tests d'appartenance à l'aide de l'opérateur « in ».

Sortie de code et d'exécution

Ce code montre l'itération sur les clés, les valeurs et les paires clé-valeur d'un dictionnaire.

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)
Sortie 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

Mise en œuvre étape par étape

  • Utilisez user.items() dans une boucle for pour extraire et décompresser simultanément les clés et les valeurs.
  • Parcourez directement le dictionnaire (ou appelez .keys()) pour parcourir les clés uniquement.
  • Utilisez .values() pour isoler et parcourir les valeurs du dictionnaire.

Foire aux questions

L'ordre d'insertion est-il conservé lors d'une itération sur un dictionnaire ?

Oui, à partir dePython 3.7+, les dictionnaires sont garantis de maintenir l'ordre d'insertion des clés.

Pouvez-vous modifier un dictionnaire tout en le parcourant ?

Non, la modification des clés (ajout ou suppression) pendant l'itération générera une RuntimeError. Modifiez plutôt une copie des clés ou des valeurs.

Sujets connexes

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.