Les dictionnaires sont une structure de données qui permet de stocker des paires clé-valeur, où chaque clé est unique et associée à une valeur. Si vous êtes débutant en programmation Python et fan de Donjons et Dragons (D&D), cet article est pour vous ! Nous allons explorer les dictionnaires à travers des exemples concrets inspirés de l'univers de D&D.
Un dictionnaire en Python est une collection non ordonnée de paires clé-valeur. Chaque clé dans un dictionnaire doit être unique et immuable (on ne peut pas changer le nom d'une clé), tandis que les valeurs peuvent être de n'importe quel type (ce sont des variables).
Pour créer un dictionnaire, vous pouvez utiliser des accolades {} ou la fonction dict().
# Utilisation des accolades
personnage = {
"nom": "Gandalf",
"classe": "Magicien",
"niveau": 5
}
# Utilisation de la fonction dict()
personnage = dict(nom="Gandalf", classe="Magicien", niveau=5)
La syntaxe pour accéder aux valeurs d'un objet dict est très proche de celle utilisée pour accéder aux élements d'une liste, sauf qu'au lieu d'utiliser un index numérique (0,1...) on utilise une chaine de caractères.
Vous pouvez accéder aux valeurs d'un dictionnaire en utilisant les clés correspondantes.
nom = personnage["nom"]
classe = personnage["classe"]
niveau = personnage["niveau"]
print(f"Nom: {nom}, Classe: {classe}, Niveau: {niveau}")
On peut s'imaginer une liste de cette manière:
| Index | Valeur |
|---|---|
| 0 | "Humain" |
| 1 | "Nain" |
| 2 | "Elf" |
On peut s'imaginer un dict de cette manière:
| Index | Valeur |
|---|---|
| "nom" | "Gandalf" |
| "classe" | "Magicien" |
| "niveau" | 5 |
Vous pouvez ajouter de nouvelles paires clé-valeur ou modifier les valeurs de paires existantes simplement en utilisant la syntaxe de l'index.
# Ajout d'une nouvelle paire clé-valeur
personnage["race"] = "Maia"
# Modification d'une paire existante
personnage["niveau"] = 6
Vous pouvez supprimer des paires clé-valeur avec la méthode del ou la méthode pop().
# Utilisation de del
del personnage["race"]
# Utilisation de pop()
niveau = personnage.pop("niveau")
Pour illustrer l'utilisation des dictionnaires en Python avec un exemple simple de Donjons et Dragons (D&D), nous allons créer un dictionnaire représentant un personnage de jeu avec des attributs de base.
Imaginons un personnage nommé "Aragorn" avec les attributs suivants :
Nous allons créer un dictionnaire pour représenter ce personnage.
# Création du dictionnaire pour le personnage
personnage = {
"nom": "Aragorn",
"classe": "Rôdeur",
"race": "Humain",
"niveau": 5,
"points_de_vie": 68
}
# Affichage du dictionnaire
print(personnage)
Création du Dictionnaire:
{} pour définir le dictionnaire."nom") et les valeurs peuvent être de n'importe quel type (chaînes de caractères, entiers, etc.).Affichage du Dictionnaire:
print(personnage) affiche le contenu du dictionnaire.Pour accéder aux valeurs associées aux clés, vous pouvez utiliser la syntaxe de l'indexation.
# Accéder et afficher les valeurs des attributs du personnage
nom = personnage["nom"]
classe = personnage["classe"]
race = personnage["race"]
niveau = personnage["niveau"]
points_de_vie = personnage["points_de_vie"]
print(f"Nom: {nom}")
print(f"Classe: {classe}")
print(f"Race: {race}")
print(f"Niveau: {niveau}")
print(f"Points de Vie: {points_de_vie}")
Vous pouvez aussi utiliser cette syntaxe pour ne pas devoir créer de variables intermédiares:
# Accéder et afficher les valeurs des attributs du personnage
print(f"Nom: {personnage['nom']}")
print(f"Classe: {personnage['classe']}")
print(f"Race: {personnage['race']}")
print(f"Niveau: {personnage['niveau']}")
print(f"Points de Vie: {personnage['points_de_vie']}")
Ou, encore, sans utiliser les f-strings:
# Accéder et afficher les valeurs des attributs du personnage
print("Nom: " + personnage['nom'])
print("Classe: " + personnage['classe'])
print("Race: " + personnage['race'])
print("Niveau: " + str(personnage['niveau']))
print("Points de Vie: " + str(personnage['points_de_vie']))
Vous pouvez ajouter de nouveaux attributs ou modifier les attributs existants du personnage.
# Ajouter un nouvel attribut
personnage["arme"] = "Épée"
# Modifier un attribut existant
personnage["points_de_vie"] = 75
# Afficher le dictionnaire mis à jour
print(personnage)
Pour supprimer un attribut du personnage, utilisez le mot-clé del.
# Supprimer l'attribut "arme"
del personnage["arme"]
# Afficher le dictionnaire mis à jour
print(personnage)
Voici le code complet avec des commentaires expliquant chaque étape :
# Création du dictionnaire pour le personnage
personnage = {
"nom": "Aragorn",
"classe": "Rôdeur",
"race": "Humain",
"niveau": 5,
"points_de_vie": 68
}
# Affichage du dictionnaire
print(personnage)
# Accéder et afficher les valeurs des attributs du personnage
print("Nom: " + personnage['nom'])
print("Classe: " + personnage['classe'])
print("Race: " + personnage['race'])
print("Niveau: " + str(personnage['niveau']))
print("Points de Vie: " + str(personnage['points_de_vie']))
# Ajouter un nouvel attribut
personnage["arme"] = "Épée"
# Modifier un attribut existant
personnage["points_de_vie"] = 75
# Afficher le dictionnaire mis à jour
print(personnage)
# Supprimer l'attribut "arme"
del personnage["arme"]
# Afficher le dictionnaire mis à jour
print(personnage)
Les dictionnaires sont une structure de données extrêmement utile et polyvalente en Python. Ils vous permettent de stocker et de manipuler des données de manière efficace et intuitive. En utilisant des exemples issus du monde de Donjons et Dragons, nous avons exploré comment créer, accéder, modifier et supprimer des éléments dans un dictionnaire.
Que vous soyez en train de gérer des personnages, des monstres, ou tout autre type de données, les dictionnaires vous offrent une solution flexible pour organiser et manipuler vos informations. Commencez à les utiliser dans vos projets Python et découvrez toute leur puissance par vous-même !
Objectif : Créer un dictionnaire simple représentant un livre avec les clés suivantes : titre, auteur, année.
Instruction :
Créez un dictionnaire nommé livre avec les clés "titre", "auteur", et "année", et assignez-lui les valeurs de votre choix.
# Votre code ici
livre = {
"titre": "Le Seigneur des Anneaux",
"auteur": "J.R.R. Tolkien",
"annee": 1954
}
print(livre)
Objectif : Accéder aux valeurs d'un dictionnaire et les afficher.
Instruction :
Utilisez le dictionnaire livre de l'exercice précédent. Accédez et affichez les valeurs des clés "titre" et "auteur".
# Votre code ici
titre = livre["titre"]
auteur = livre["auteur"]
print(f"Titre: {titre}")
print(f"Auteur: {auteur}")
Objectif : Ajouter une nouvelle paire clé-valeur à un dictionnaire existant.
Instruction :
Ajoutez une nouvelle clé "genre" au dictionnaire livre avec la valeur "Fantasy".
# Votre code ici
livre["genre"] = "Fantasy"
print(livre)
Objectif : Modifier la valeur associée à une clé dans un dictionnaire.
Instruction :
Modifiez la valeur de la clé "année" dans le dictionnaire livre pour qu'elle soit 1955.
# Votre code ici
livre["annee"] = 1955
print(livre)
Objectif : Supprimer une paire clé-valeur d'un dictionnaire.
Instruction :
Supprimez la clé "genre" du dictionnaire livre.
# Votre code ici
del livre["genre"]
print(livre)