# Utiliser les dictionnaires en Python

Les dictionnaires Python

Un dictionnaire en Python est une structure de données qui enregistre des paires clé-valeur avec des clés uniques. Les dictionnaires sont aussi appelés tableaux associatifs ou tables de hachage dans d’autres langages de programmation. Les dictionnaires sont des structures de données modifiables et leur taille est dynamique: il est facile d’ajouter ou supprimer un élément. Un dictionnaire peut stocker des éléments de divers types, voire d’autres dictionnaires.

Créer un dictionnaire

Voici comment créer un dictionnaire vide :

dictionnaireVide = {}

Créer un dictionnaire avec des éléments initiaux :

dictionnairePlein = {"cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3"}

Ajouter ou modifier des éléments du dictionnaire

dictionnairePlein["cle4"] = "valeur4"  # Ajoute une nouvelle paire clé-valeur
dictionnairePlein["cle1"] = "nouvelle_valeur1"  # Modifie la valeur associée à la clé1

Accéder à un élément du dictionnaire

Il est possible d’accéder à un élément du dictionnaire avec les crochets [].

valeur = dictionnairePlein["cle2"]

ou la méthode get.

valeur = dictionnairePlein.get("cle2")

Supprimer un élément du dictionnaire

Pour supprimer un élément du dictionnaire (paire clé-valeur) vous avez plusieurs possibilités. Utiliser le mot-clé del:

dictionnairePlein = {"cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3"}
del dictionnairePlein["cle3"]

Utiliser la méthode pop(): elle supprime un élément du dictionnaire via sa clé et retourne l’élément supprimé. A noter que si la clé n’existe pas, une exception KeyError sera levée.

dictionnairePlein = {"cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3"}
dictionnairePlein.pop("cle3")

Utiliser la méthode popitem(): elle supprime un élément arbitraire du dictionnaire qui est en général le dernier élément entrant (Last In First Out) d’un dictionnaire. À partir de Python 3.5, la méthode popitem() garantit que l’ordre LIFO sera respecté. Cette méthode retourne un tuple contenant la clé et la valeur de l’élément supprimé.

Vider le dictionnaire

la méthode clear permet de vider le dictionnaire:

dictionnairePlein = {"cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3"}
dictionnairePlein.clear() # {}

Vérifier si une clef est présente dans le dictionnaire

if "cle1" in dictionnairePlein:
   print("La cle1 est présente dans le dictionnaire")

Obtenir la taille du dictionnaire

La fonction len permet d’avoir la taille du dictionnaire (nombre de paires clé-valeur).

taille = len(dictionnairePlein)

Parcourir un dictionnaire

Il existe plusieurs manières d’itérer sur un dictionnaire.

Itérer sur les clés

dictionnairePlein = {"cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3"}
for cle in dictionnairePlein:
    print(f"Clé: {cle}, Valeur: {dictionnairePlein[cle]}")

for cle in dictionnairePlein.keys():
    print(f"Clé: {cle}, Valeur: {dictionnairePlein[cle]}")

Les deux boucles font essentiellement la même chose si ce n’est que .keys() permet d’accéder directement aux clés dans un objet dict_keys qu’on pourrait stocker dans une variable pour d’autres traitements.

cles = dictionnairePlein.keys();
print(cles) # dict_keys(['cle1', 'cle2', 'cle3'])

Itérer sur les valeurs

dictionnairePlein = {"cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3"}
for valeur in dictionnairePlein.values():
    print(f"Valeur: {valeur}")

Itérer sur les items (paires clé-valeur)

Sans doute la boucle la plus complète, permet d’itérer sur un dictionnaire en ayant directement accès à la clé et à la valeur ensemble.

dictionnairePlein = {"cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3"}
for cle, valeur in dictionnairePlein.items():
    print(f"Clé: {cle}, Valeur: {valeur}")