Aller au contenu

Les dictionnaires

Les dictionnaires sont utilisés pour stocker des informations sous forme de clé-valeur ». Ils sont souvent comparés à un carnet d'adresses où chaque nom (clé) est associé à une adresse (valeur). Une information est rapidement retrouvée grâce à sa clé.

Définir un dictionnaire

Un dictionnaire est défini à l’aide des accolades {}. Chaque élément d’un dictionnaire est constitué d'une paire clé: valeur.

user_dict = {
    "nom": "Baptiste",
    "age": 38,
    "ville": "Rennes"
}

Dans l'exemple ci-dessus, le dictionnaire user_dict contient trois paires clé-valeur (on parlera également de trois éléments):

  • "nom", "age" et "ville" sont les clés.
  • "Baptiste", 38 et "Rennes" sont les valeurs.

Accéder aux valeurs

Les valeurs d’un dictionnaire sont obtenues en utilisant les clés correspondantes :

# On affiche ici la valeur de l'élément identifiée par la clé "nom"
print(user_dict["nom"])  # Affiche: Baptiste
print(user_dict["age"])  # Affiche: 38

Ajout ou modification d’éléments

De nouvelles paires clé-valeur peuvent être ajoutées ou des valeurs existantes peuvent être modifiées :

# On définit le dictionnaire
user_dict = {
    "nom": "Baptiste",
    "age": 38,
    "ville": "Rennes"
}

# Une nouvelle clé-valeur est ajoutée
user_dict["profession"] = "Ingénieur"

# Une valeur existante est modifiée
user_dict["ville"] = "Brest"

# On affiche le résultat
print(user_dict)

Supprimer des éléments

Les éléments d’un dictionnaire peuvent être supprimés à l’aide de del ou de la méthode pop().

# On définit le dictionnaire
user_dict = {
    "nom": "Baptiste",
    "age": 38,
    "ville": "Brest"
}

# La clé "age" est supprimée
del user_dict["age"]

# La clé "ville" est retirée à l'aide de pop, et sa valeur est stockée dans la variable ville
ville = user_dict.pop("ville")

print(user_dict)  # Ne contient plus "age" ni "ville"
print(ville)  # Affiche: Brest

Exemple

Des informations sur plusieurs étudiants peuvent être stockées dans un dictionnaire, où chaque étudiant est identifié par son numéro d'étudiant.

students = {
    123: {"nom": "Alice", "age": 25, "classe": "Informatique"},
    456: {"nom": "Bob", "age": 22, "classe": "Réseau"},
    789: {"nom": "Charlie", "age": 24, "classe": "Physique"}
}

# Les informations d'Baptiste sont accédées
print(students[123]["nom"])  # Affiche: Alice

# Un nouvel étudiant est ajouté
students[1011] = {"nom": "David", "age": 23, "classe": "Chimie"}

print(students)

Aller plus loin

Les dictionnaires disposent de nombreux avantages pour stocker des données :

  • Accès rapide : Une recherche de valeur est effectuée efficacement à l'aide des clés, contrairement aux listes où chaque élément doit être parcouru pour trouver l’information.
  • Structure flexible : Différents types de données peuvent être stockés, comme des chaînes de caractères, des nombres, ou même d'autres dictionnaires ou listes.
  • Représentation claire : Les objets complexes, comme des étudiants ou des plats d'un menu des attributs variés, sont facilement représentés.
  • Complémentarité avec JSON : Les dictionnaires peuvent être convertis en JSON, ce qui permet de les stocker dans des fichiers ou de les transmettre sur le réseau.

Dans les exemples ci-dessus, nous utilisons des fonctions natives du langage python décrites en détails ici.