Les dictionnaires dans Python
Les dictionnaires dans Python sont des structures de données non ordonnées qui stockent des paires clé-valeur. On appelle ces structures des "objets" dans d'autres langages de programmation.
Pour mieux comprendre, nous allons pratiquer 😎.
Créer une dictionnaire dans Python
Nous allons commencer par créer un dictionnaire.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
print(voiture)
# Affiche : {'marque': 'Toyota', 'modele': 'Yaris', 'annee': 2019, 'couleur': 'rouge'}
Dans une variable nommée voiture
, nous avons enregistré un dictionnaire.
Les dictionnaires sont écrites avec des accolades {}
et ils ont des clés et des valeurs.
Dans notre exemple, une clé est marque
et la valeur de cette clé est Toyota
.
Récupérer une valeur du dictionnaire
Première méthode
Dans Python, pour récupérer une valeur, il nous fait la clé.
Explorons ensemble cette façon de procéder.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
print(voiture['modele'])
# Affiche : Yaris
Dans ce bout de code, nous avons récupéré le modèle de la voiture. Pour cela nous avons utiliser la clé modele
du dictionnaire voiture
. Le système identique aux listes ou aux tuples. Il faut se servir de crochets []
. Mais au lieu de l'index, nous insérons la clé.
Deuxième méthode
Il est tout a fait possible, si nous préférons, d'utiliser une méthode à la place.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
print(voiture.get("modele"))
# Affiche : Yaris
Cette fois-ci, nous nous sommes servis de la méthode .get()
pour atteindre le même résultat.
Changer la valeur d'une clé
Il est possible de changer une valeur.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
voiture["modele"] = "Corolla"
print(voiture)
# Affiche : {'marque': 'Toyota', 'modele': 'Corolla', 'annee': 2019, 'couleur': 'rouge'}
Dans la ligne 10, nous avons remplacé la valeur Yaris
par Corolla
. Et cela fonctionne car désormais notre dictionnaire contient bien Corolla
pour la clé marque
.
Ajouter un nouvel élément
Si besoin est, vous avez la possibilité d'intégrer un nouvel élément.
C'est très simple et logique. C'est exactement la même méthode que pour la modification.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
voiture["puissance"] = 100
print(voiture)
# Affiche : {'marque': 'Toyota', 'modele': 'Yaris', 'annee': 2019, 'couleur': 'rouge', 'puissance': 100}
Maintenant, une nouvelle clé et un nouvelle valeur sont disponibles : 'puissance': 100
.
Supprimer un élément
.pop()
Pour supprimer un élément, vous pouvez utiliser la méthode .pop()
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
# Supprimer un élément
voiture.pop("couleur")
print(voiture)
# Affiche : {'marque': 'Toyota', 'modele': 'Yaris', 'annee': 2019}
La clé couleur
et sa valeur correspondante ont été supprimé.
del
Vous pouvez atteindre ce même objectif avec le mot clé del
.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
# Supprimer un élément
del voiture["couleur"]
print(voiture)
# Affiche : {'marque': 'Toyota', 'modele': 'Yaris', 'annee': 2019}
Le mot clé del
nous permet de tous supprimer si nous n'indiquons pas de clé à notre variable qui contient notre dictionnaire.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
# Tout supprimer
del voiture
print(voiture)
# Affiche : NameError: name 'voiture' is not defined
Comme tout a été supprimé notre programme considère que notre variable voiture
n'existe pas.
.clear
La méthode .clear
supprimer tout le contenu de la variable.
voiture = {
"marque": "Toyota",
"modele": "Yaris",
"annee": 2019,
"couleur": "rouge"
}
# Supprimer tout le contenu
voiture.clear()
print(voiture)
# Affiche : {}
Il y a une différence avec del
. Cette dernière supprime tout ainsi que la variable. Alors que la méthode que nous sommes entrain d'analyser supprimer juste le contenu de la variable. Nous nous retrouvons avec un dictionnaire vide : {}
.