Comme les listes, les dictionnaires permettent de "stocker" des données. Chaque élément d'un dictionnaire est composé de 2 parties, on parle de paires "clé/valeur". Voici un exemple de dictionnaire :


mon_dico = {"nom": "Durand", "prenom": "Christophe", "date de naissance": "29/02/1981"}
			

Comme vous pouvez le constater, nous utilisons des accolades {} pour définir le début et la fin du dictionnaire (alors que nous utilisons des crochets [] pour les listes et les parenthèses pour les tuples). Dans le dictionnaire ci-dessus, "nom", "prenom" et "date de naissance" sont des clés et "Durand", "Christophe" et "29/02/1981" sont des valeurs. La clé "nom" est associée à la valeur "Durand", la clé "prenom" est associée à la valeur "Christophe" et la clé "date de naissance" est associée à la valeur "29/02/1981". Les clés sont des chaînes de caractères ou des nombres. Les valeurs peuvent être des chaînes de caractères, des nombres, des booléens...

Pour créer un dictionnaire, il est aussi possible de procéder comme suit :


mon_dico = {}
mon_dico["nom"] = "Durand"
mon_dico["prenom"] = "Christophe"
mon_dico["date de naissance"] = "29/02/1981"
				

À noter qu'il est aussi possible d'écrire :


mon_dico = dict()
mon_dico["nom"] = "Durand"
mon_dico["prenom"] = "Christophe"
mon_dico["date de naissance"] = "29/02/1981"
				

(on remplace mon_dico = {} par mon_dico = dict())

À faire vous-même 1

Le "mon_dico" est associé à un dictionnaire. Il est possible d'afficher le contenu du dictionnaire associé au nom mon_dico en saisissant mon_dico dans la console. Faites le test après avoir exécuté le programme ci-dessous.


mon_dico = {"nom": "Durand", "prenom": "Christophe", "date de naissance": "29/02/1981"}
				

Il est possible d'afficher la valeur associée à une clé :

À faire vous-même 2

Soit le programme suivant :


mon_dico = {"nom": "Durand", "prenom": "Christophe", "date de naissance": "29/02/1981"}
print(f'Bonjour je suis {mon_dico["prenom"]} {mon_dico["nom"]}, je suis né le {mon_dico["date de naissance"]}')
				

Quel est le résultat attendu après l'exécution de ce programme ? Vérifiez votre réponse.


Il est facile d'ajouter un élément à un dictionnaire (les dictionnaires sont mutables)

À faire vous-même 3

Soit le programme suivant :


mon_dico = {"nom": "Durand", "prenom": "Christophe", "date de naissance": "29/02/1981"}
print(f'Bonjour je suis {mon_dico["prenom"]} {mon_dico["nom"]}, je suis né le {mon_dico["date de naissance"]}')
mon_dico['lieu naissance'] = "Bonneville"
print (f'à {mon_dico["lieu naissance"]}')
				

Quel est le résultat attendu après l'exécution de ce programme ? Vérifiez votre réponse.


L'instruction "del" permet du supprimer une paire "clé/valeur"

À faire vous-même 4

Quel est le contenu du dictionnaire associé au nom mes_fruits après l'exécution du programme ci-dessous ? Vérifiez votre réponse à l'aide de la console.


mes_fruits = {"poire": 3, "pomme": 4, "orange": 2}
del mes_fruits["pomme"]
				

Il est possible de modifier une valeur :

À faire vous-même 5

Soit le programme suivant :


mes_fruits = {"poire": 3, "pomme": 4, "orange": 2}
mes_fruits["pomme"] = mes_fruits["pomme"] - 1
				

Quel est le contenu du dictionnaire associé au nom mes_fruits après l'exécution du programme ci-dessus ? Vérifiez votre réponse à l'aide de la console.


Il est possible de parcourir un dictionnaire à l'aide d'une boucle for. Ce parcours peut se faire selon les clés ou les valeurs. Commençons par parcourir les clés à l'aide de la méthode "keys"

À faire vous-même 6

Testez le programme suivant :


mes_fruits = {"poire": 3, "pomme": 4, "orange": 2}
print("liste des fruits :")
for fruit in mes_fruits.keys():
	print(fruit)
					

À noter que le ".keys()" n'est pas obligatoire pour parcourir les clés :

À faire vous-même 7

Testez le programme suivant :


mes_fruits = {"poire": 3, "pomme": 4, "orange": 2}
for d in mes_fruits:
	print (d)
					

La méthode values() permet de parcourir le dictionnaire selon les valeurs

À faire vous-même 8

Tester le programme suivant :


mes_fruits = {"poire": 3, "pomme": 4, "orange": 2}
for qte in mes_fruits.values():
  print(qte)
					

Enfin, il est possible de parcourir un dictionnaire à la fois sur les clés et les valeurs en utilisant la méthode items().

À faire vous-même 9

Testez le programme suivant :


mes_fruits = {"poire": 3, "pomme": 4, "orange": 2}
print ("Stock de fruits :")
for fruit, qte in mes_fruits.items():
	print (f"{fruit} : {qte}")
					

Vous avez sans doute remarqué l'utilisation de deux variables (fruit et qte) au niveau du "for...in"


FICHE REVISION

Auteur : David Roche