Enregistrez des données complexes avec des dictionnaires

Qu’est-ce qu’un dictionnaire ?

Parfois vous avez besoin de représenter des données plus complexes que des nombres, des chaînes ou des listes.

Un dictionnaire est une structure de données qui enregistre des données dans des paires clés-valeurs. Voici un exemple d’une clé et d’une valeur :  

"responsable_de_campagne": "Jeanne d'Arc"

La clé est   "responsable_de_campagne"  et la valeur est   "Jeanne d'Arc"  . 

Les dictionnaires sont indiqués par des accolades {}  au début et à la fin. Chaque paire clé-valeur comprend un deux-points  :  placé entre la clé et la valeur, et une virgule  ,   à la fin. Chaque dictionnaire doit être composé de clés uniques.

Dans le diagramme ci-dessous, le dictionnaire défini a trois éléments, et chaque élément est une paire clé-valeur.

La clé de l'élément 1 est Rouge, sa valeur est #FF0000. Les éléments 2 et 3 sont Vert et Bleu
Chaque élément dans le dictionnaire est une paire clé-valeur.

Créez un dictionnaire

Imaginons que vous vouliez enregistrer des informations à propos d’une nouvelle campagne pour une entreprise de nourriture pour chien. Vous allez probablement devoir sauvegarder un nom de campagne, des dates de début et de fin, le nom d’un responsable de campagne, et des influenceurs importants. Vous pouvez sauvegarder toutes ces informations dans une variable avec un dictionnaire.

Pour enregistrer tout cela, vous pouvez sauvegarder un dictionnaire comme ça :

nouvelle_campagne = {
"responsable_de_campagne": "Jeanne d'Arc",
"nom_de_campagne": "Campagne nous aimons les chiens",
"date_de_début": "01/01/2020",
"influenceurs_importants": ["@MonAmourDeChien", "@MeilleuresFriandisesPourChiens"]
}

Vous pouvez aussi créer un nouveau dictionnaire avec des accolades vides  {}  ou la fonction  dict()  , et avec des paires clés-valeurs comme indiqué ci-dessous :

taux_de_conversion = {}
taux_de_conversion['facebook'] = 3.4
taux_de_conversion['instagram'] = 1.2
taux_de_conversion = dict()
taux_de_conversion['facebook'] = 3.4
taux_de_conversion['instagram'] = 1.2

Accédez à une valeur dans un dictionnaire

Pour accéder aux différentes valeurs, vous pouvez utiliser la clé pour chacune des paires clés-valeurs.

>>> nouvelle_campagne['responsable_de_campagne']
"Jeanne d'Arc"
>>> taux_de_conversion['facebook']
3.4

Réalisez des opérations courantes avec les dictionnaires

Comme pour les listes, plusieurs méthodes (ou opérations) intégrées à Python vous permettent de manipuler les données dans les dictionnaires.

Ajoutez une paire clé-valeur

Pour ajouter une paire clé-valeur à un dictionnaire, ajoutez juste une nouvelle clé dans le dictionnaire existant. Si la clé existe déjà, vous l’écraserez en définissant une valeur. Le code suivant crée un dictionnaire appelé   infos_labradoodle  , et enregistre des informations à propos du poids et de l’origine des labradoodles, un croisement de chiens.

infos_labradoodle = {
"poids": "13 à 16 kg",
"origine": "États-Unis"
}

Pour ajouter une nouvelle paire clé-valeur, comme le nom scientifique du labradoodle, ajoutez simplement :

infos_labradoodle['nom_scientifique'] = "Canis lupus familiaris"

Maintenant,   infos_labradoodle  renvoie :

>>> print(infos_labradoodle)
{'poids': '13 à 16 kg', 'origine': 'États-Unis', 'nom_scientifique': 'Canis lupus familiaris'}
}

Si vous écrivez   infos_labradoodle["poids"] = "45 kg"  , la valeur existante sera écrasée, et le résultat sera donc :

>>> infos_labradoodle["poids"]
"45 kg"

Supprimez une paire clé-valeur

Pour supprimer une paire clé-valeur, vous pouvez utiliser le mot-clé  del  et la clé que vous voulez supprimer, ou encore la méthode   pop  . Pour supprimer la paire clé-valeur  "origine"  de la paire  clé-valeur  , écrivez :

>>> del infos_labradoodle["origine"]
>>> print(infos_labradoodle)
{ "poids": "13 à 16 kg",
"nom_scientifique": "Canis lupus familiaris"}

Voici encore quelques méthodes couramment utilisées pour manipuler des dictionnaires :

Méthodes

Utilisation

Syntaxe

keys()

​​Retourne une vue sur les clés du dictionnaire.

nom_du_dictionnaire.keys()

values()

Retourne une vue sur les valeurs du dictionnaire.

 nom_du_dictionnaire.values()

items()

Retourne une vue sur les couples (clé, valeur) du dictionnaire.

 nom_du_dictionnaire.items()

get(clé)

Retourne la valeur associée à la clé spécifiée. Si la clé n'est pas présente dans le dictionnaire, retourne la valeur None  .

 nom_du_dictionnaire.get(clés)

pop(clé)

Supprime la clé spécifiée et retourne la valeur associée. Si la clé n'est pas présente dans le dictionnaire, retourne la valeur None  .

 nom_du_dictionnaire.pop(clés)

clear()

Supprime tous les éléments du dictionnaire.

 nom_du_dictionnaire.clear()

Vérifiez l’existence d’une clé spécifique

Vous pouvez utiliser le mot-clé in  pour vérifier si une clé spécifique existe dans un dictionnaire. Pour faire cela, spécifiez la clé que vous voulez rechercher, écrivez le mot-clé in  et le nom de la variable du dictionnaire que vous examinez. Le résultat renvoie un booléen qui indique si la clé est dans ce dictionnaire. Par exemple, si vous voulez voir si la clé « poids » existe dans votre dictionnaire   infos_labradoodle  , écrivez le code qui suit : 

>>> "poids" in infos_labradoodle
True
>>> "race" in infos_labradoodle
False

A vous de jouer 

Contexte

Maintenant que vous vous êtes familiarisé avec quelques opérations, pratiquez la manipulation de dictionnaire en utilisant toutes les méthodes vues précédemment. 😁

Consignes

  1. Créez un dictionnaire appelé  fruits  avec les clés  pomme  ,  banane  et  orange  , et les valeurs  rouge  ,  jaune  et  orange  .

  2. Ajoutez la clé  kiwi  avec la valeur  vert  au dictionnaire  fruits  .

  3. Accédez à la valeur correspondant à la clé  banane  et stockez-la dans une variable appelée  couleur_banane  .

  4. Modifiez la valeur associée à la clé  pomme  pour  vert  .

  5. Supprimez la clé  orange  du dictionnaire  fruits  .

  6. Affichez les clés restantes dans le dictionnaire.

Une fois que vous avez terminé l'exercice, vous pouvez exécuter la commande suivante dans le terminal de VS code  pytest tests.py

En résumé

  • Un dictionnaire est un moyen d’enregistrer des paires clés-valeurs qui représentent un objet plus grand.

  • Vous pouvez créer un dictionnaire avec des accolades {}  , et y mettre toutes les clés-valeurs dès le début, ou les ajouter au fur et à mesure.

  • Chaque clé dans un dictionnaire doit être unique.

Résumé de la partie 1

Félicitations ! Vous avez atteint la fin de la partie 1 du cours, et vous pouvez maintenant créer des données, les blocs de code de base du code Python. Vous avez déjà fait beaucoup !

  • Vous avez utilisé des variables pour enregistrer des informations comme données dans le code Python.

  • Vous avez utilisé des types de données pour classer différents types de données : les entiers, les virgules flottantes, les chaînes de caractères et les booléens.

  • Vous avez utilisé des listes et des tuples pour enregistrer des données qui sont liées.  

  • Vous avez utilisé des dictionnaires pour enregistrer des données complexes.

Vous êtes bien parti pour devenir développeur Python ! Maintenant c’est le moment de tester vos connaissances sur la création de données dans Python ! Vous allez passer un quiz. Ensuite, dans la partie 2, vous allez apprendre à gérer la logique du programme.

Et si vous obteniez un diplôme OpenClassrooms ?
  • Formations jusqu’à 100 % financées
  • Date de début flexible
  • Projets professionnalisants
  • Mentorat individuel
Trouvez la formation et le financement faits pour vous