Leçon 7 / 10
Leçon 07 · Partie 2 — Structures et projet

Dictionnaires

Associer des données : clé / valeur

Une liste stocke des valeurs dans un ordre précis, accessibles par numéro. Un dictionnaire stocke des paires clé → valeur. On accède à une valeur par sa clé (un nom), pas par sa position.

Pense à un dictionnaire papier : tu cherches le mot (clé) et tu obtiens sa définition (valeur). Ou pense à une fiche de contact : "nom" → "Emma", "âge" → 17.

Python
# Créer un dictionnaire avec des accolades
joueur = {
    "nom": "Emma",
    "score": 1450,
    "vies": 3,
    "actif": True
}

print(joueur)
# {'nom': 'Emma', 'score': 1450, 'vies': 3, 'actif': True}

Accéder à une valeur

Python
joueur = {"nom": "Emma", "score": 1450}

# Accès direct par clé
print(joueur["nom"])     # Emma
print(joueur["score"])   # 1450

# .get() — plus sûr : retourne None si la clé n'existe pas
print(joueur.get("vies"))         # None
print(joueur.get("vies", 3))      # 3 (valeur par défaut)

Utilise .get("clé") plutôt que ["clé"] quand la clé peut ne pas exister. Accéder à une clé inexistante avec [] génère une erreur KeyError.

Modifier un dictionnaire

Python
joueur = {"nom": "Emma", "score": 1450}

# Modifier une valeur existante
joueur["score"] = 1600

# Ajouter une nouvelle paire clé/valeur
joueur["niveau"] = 5

# Supprimer une clé
del joueur["score"]

print(joueur)   # {'nom': 'Emma', 'niveau': 5}

Boucler sur un dictionnaire

Python
contact = {
    "nom": "Lucas",
    "email": "lucas@exemple.fr",
    "tel": "06 12 34 56 78"
}

# Boucler sur les clés
for cle in contact:
    print(cle)   # nom, email, tel

# Boucler sur les clés ET les valeurs
for cle, valeur in contact.items():
    print(f"{cle} : {valeur}")

Dictionnaire de dictionnaires

On peut imbriquer des dictionnaires. Par exemple, une liste de contacts :

Python
carnet = {
    "emma": {"email": "emma@mail.fr", "tel": "06 11 22 33 44"},
    "lucas": {"email": "lucas@mail.fr", "tel": "07 55 66 77 88"}
}

print(carnet["emma"]["email"])   # emma@mail.fr
💡

Cette structure de carnet de contacts sera au cœur du mini-projet en leçon 10. Garde ça en tête !

// À retenir
  • Un dict stocke des paires clé/valeur : {"clé": valeur}.
  • Accès : dict["clé"] ou dict.get("clé") (plus sûr).
  • Ajouter/modifier : dict["nouvelle_clé"] = valeur.
  • Supprimer : del dict["clé"].
  • Boucler sur clés et valeurs : for cle, val in dict.items():