10.3 Opérations sur les dictionnaires
Objectifs d'apprentissage
À la fin de cette section, vous devriez être capable de :
- Reconnaître qu'un objet dictionnaire est mutable.
- Évaluer les éléments, clés et valeurs d'un dictionnaire.
- Démontrer la capacité à accéder aux éléments d'un dictionnaire, à les évaluer et à les modifier.
- Modifier un dictionnaire en ajoutant des éléments.
- Modifier un dictionnaire en supprimant des éléments.
Accéder aux éléments d'un dictionnaire
En Python, les valeurs associées aux clés d'un dictionnaire sont accessibles en utilisant les clés comme indices. Voici deux façons d'accéder aux éléments d'un dictionnaire en Python :
- Notation entre crochets : les crochets
[]contenant la clé permettent d'accéder à la valeur associée à cette clé. Si la clé est introuvable, une exception est levée. - Méthode
get(): la méthodeget()est appelée avec la clé en argument pour accéder à la valeur associée à cette clé. Si la clé est introuvable, la méthode renvoieNonepar défaut, ou une valeur par défaut spécifiée en second argument.
Ex. : Dans le code ci-dessous, un objet dictionnaire my_dict est initialisé avec les éléments {"apple": 2, "banana": 3, "orange": 4}. La notation entre crochets et la méthode get() sont utilisées pour accéder aux valeurs associées respectivement aux clés "banana" et "apple". Lors de l'accès au dictionnaire pour obtenir la valeur associée à la clé "pineapple", -1 est renvoyé puisque la clé n'existe pas dans le dictionnaire.
my_dict = {"apple": 2, "banana": 3, "orange": 4}
print(my_dict["banana"]) # Prints: 3
print(my_dict.get("apple")) # Prints: 2
print(my_dict.get("pineapple", -1)) # Prints: -1
Concepts en pratique
Éléments d'un dictionnaire
Étant donné le dictionnaire members = {"Jaya": "Student", "John": "TA", "Ksenia": "Staff"}, répondez aux questions suivantes.
Obtenir les clés et les valeurs d'un dictionnaire
Les clés d'un dictionnaire, ses valeurs, ainsi que les clés et les valeurs ensemble peuvent être obtenues en utilisant respectivement les appels de fonctions keys(), values() et items(). Les types de retour de keys(), values() et items() sont dict_keys, dict_values et dict_items, qui peuvent être convertis en un objet list à l'aide du constructeur de liste list().
Exemple 10.1
Formatage de modèle de chaîne pour les demandes d'inscription aux cours
Un objet dictionnaire avec les éléments {"a": 97, "b": 98, "c": 99} est créé. Les fonctions keys(), values() et items() sont appelées pour obtenir respectivement les clés, les valeurs et les éléments du dictionnaire. list() est également utilisée pour convertir la sortie en un objet list.
dictionary_object = {"a": 97, "b": 98, "c": 99}
print(dictionary_object.keys())
print(list(dictionary_object.keys()))
print(dictionary_object.values())
print(dictionary_object.items())
La sortie du code ci-dessus est :
dict_keys(["a", "b", "c"])
["a", "b", "c"]
dict_values([97, 98, 99])
dict_items([("a", 97), ("b", 98), ("c", 99)])
Concepts en pratique
Clés et valeurs d'un dictionnaire
Étant donné le dictionnaire numbers = {"one": 1, "two": 2, "three": 3}, répondez aux questions suivantes.
Mutabilité des dictionnaires
En Python, un dictionnaire est un type de données mutable, ce qui signifie que le contenu d'un dictionnaire peut être modifié après sa création. Des éléments peuvent être ajoutés, mis à jour ou supprimés d'un dictionnaire après la création d'un objet dictionnaire.
Pour ajouter un élément à un dictionnaire, on peut utiliser soit la notation entre crochets, soit la fonction update().
- Notation entre crochets : lors de l'utilisation des crochets pour créer un nouvel objet clé et lui affecter une valeur, la nouvelle paire clé-valeur sera ajoutée au dictionnaire.
my_dict = {"apple": 2, "banana": 3, "orange": 4} my_dict["pineapple"] = 1 print(my_dict) # Prints: {"apple": 2, "banana": 3, "orange": 4, "pineapple": 1} - Méthode
update(): la méthodeupdate()peut être appelée avec des paires clé-valeur supplémentaires pour mettre à jour le contenu du dictionnaire.my_dict = {"apple": 2, "banana": 3, "orange": 4} my_dict.update({"pineapple": 1, "cherry": 0}) print(my_dict) # Prints: {"apple": 2, "banana": 3, "orange": 4, "pineapple": 1, "cherry": 0}
Pour modifier un élément d'un dictionnaire, les deux approches ci-dessus peuvent être utilisées sur une clé existante du dictionnaire avec la valeur mise à jour. Ex. :
- Notation entre crochets :
my_dict = {"apple": 2, "banana": 3, "orange": 4} my_dict["apple"] = 1 print(my_dict) # Prints: {"apple": 1, "banana": 3, "orange": 4} - Méthode
update():my_dict = {"apple": 2, "banana": 3, "orange": 4} my_dict.update({"apple": 1}) print(my_dict) # Prints: {"apple": 1, "banana": 3, "orange": 4}
Des éléments peuvent être supprimés d'un dictionnaire à l'aide du mot-clé del ou de la méthode pop().
- Mot-clé
del:my_dict = {"apple": 2, "banana": 3, "orange": 4} del my_dict["orange"] print(my_dict) # Prints: {"apple": 2, "banana": 3} - Méthode
pop():my_dict = {"apple": 2, "banana": 3, "orange": 4} deleted_value = my_dict.pop("banana") print(deleted_value) # Prints: 3 print(my_dict) # Output: {"apple": 2, "orange": 4}
Concepts en pratique
Modifier un dictionnaire
Étant donné le dictionnaire food = {"Coconut soup": "$15", "Butter Chicken": "$18", "Kabob": "$20"}, répondez aux questions suivantes.
À vous d'essayer
Créer un dictionnaire de voitures étape par étape
Suivez les étapes ci-dessous pour créer un dictionnaire de cars et le modifier étape par étape.
- Créez un dictionnaire vide.
- Ajoutez une paire clé-valeur
"Mustang": 10. - Ajoutez une autre paire clé-valeur
"Volt": 3. - Affichez le dictionnaire.
- Modifiez la valeur associée à la clé
"Mustang"pour qu'elle soit égale à2. - Supprimez la clé
"Volt"et la valeur associée. - Affichez le contenu du dictionnaire.
Affiche {"Mustang": 2}
À vous d'essayer
Le nombre de caractères uniques
Étant donné une valeur de chaîne de caractères, calculez et affichez le nombre de caractères uniques en utilisant un dictionnaire.
Input:
string_value = "This is a string"
Affiche 10