Les dictionnaires en Python

1. Un dictionnaire Python c'est quoi ?

Les dictionnaires sont l'implémentation par Python d'une structure de données plus généralement connue sous le nom de tableau associatif. Un dictionnaire consiste en une collection de paires clé-valeur. Chaque paire clé-valeur mappe la clé à sa valeur associée.
En Python, un dictionnaire peut être créé en plaçant une séquence d'éléments entre accolades {}, séparés par une virgule. Le dictionnaire contient des paires de valeurs, l'une étant la clé et l'autre élément de paire correspondant étant sa clé. Les valeurs d'un dictionnaire peuvent être de n'importe quel type de données et peuvent être dupliquées, tandis que les clés ne peuvent pas être répétées et doivent être immuables.

Syntaxe

Pour accéder à une valeur d'un dictionnaire, on utilise le nom du dictionnaire suivi de la clé correspondante entre crochets:

Exemple age des étudiants sur un dictionnaire

2. Parcourir les valeurs et les clés d'un dictionnaire Python

Un dictionnaire Python est doté des méthodes permettant le parcourt des valeurs des clés:

  1. value() : méthode qui permet de parcourir les valeurs du dictionnaire
  2. keys() : méthode qui permet de parcourir les clés du dictionnaire

Exemple : parcourt des valeurs d'un dictionnaire

Exemple : parcourt des clés d'un dictionnaire

Remarque(parcourt simultané des valeurs et des clés)

On peut aussi parcourir les clés et les valeurs en même temps en passant à la méthode items()

Exemple: parcourt des clés et des valeurs




3. Mettre à jour, ajouter ou supprimer des éléments d'un dictionnaire

3.1 Mettre à jour un élément du dictionnaire

On peut mettre à jour un élément au sein d'un dictionnaire python directement en affectant une valeur à une clé:

Exemple: mettre à jours un stock

3.2 Ajouter un élément au dictionnaire

Dans le cas d'une clé inexistante, la même méthode cité ci-dessus, permet d'ajouter un élément au dictionnaire:

Exemple: Ajouter un élément au stock

3.3 Supprimer un élément du dictionnaire

On peut supprimer un élément du dictionnaire en indiquant sa clé dans la méthode pop().

Exemple: suppression d'un élément du dictionnaire

Un dictionnaire est doté d'une autre méthode : popitem() qui permet de supprimer le dernier élément

Exemple: Suppression du dernier élément

3.4 Vider un dictionnaire

Un dictionnaire Python peut être facilement vidé via la méthode clear()

Exemple: vider un dictionnaire

3.5 Inverser l'ordre des éléments d'un dictionnaire

En Python 3.7 et versions ultérieures, vous pouvez utiliser la méthode reversed() avec un dictionnaire pour inverser l'ordre des éléments.

Exemple

Ce code créera un nouveau dictionnaire appelé dictionnaire_inverse qui contiendra les mêmes éléments que mon_dictionnaire, mais dans l'ordre inverse. Lorsque vous l'exécutez, vous obtiendrez la sortie suivante :

4. Récapitulatif des méthodes associées à un dictionnaire

Voici un récapitulatif des principales méthodes associées à un objet dictionnaire:

  1. clear() : supprime tous les éléments du dictionnaire.
  2. copy() : retourne une copie superficielle du dictionnaire.
  3. fromkeys(seq [, v]) : retourne un nouveau dictionnaire avec les clés de seq et une valeur égale à v (la valeur par défaut est None).
  4. get(key [, d]) : retourne la valeur de key. Si la clé ne quitte pas, retourne d (la valeur par défaut est Aucune).
  5. items() : retourne une nouvelle vue des éléments du dictionnaire (clé, valeur).
  6. keys() : retourne une nouvelle vue des clés du dictionnaire.
  7. pop(key [, d]) : supprime l'élément avec key et renvoie sa valeur ou d si key n'est pas trouvé. Si d n'est pas fourni et que la clé est introuvable, soulève KeyError.
  8. popitem() : supprimer et retourner un élément arbitraire (clé, valeur). Lève KeyError si le dictionnaire est vide.
  9. setdefault(key [, d]) : si key est dans le dictionnaire, retourne sa valeur. Sinon, insérez la clé avec la valeur d et renvoyez d (la valeur par défaut est Aucune).
  10. update([other]) : met à jour le dictionnaire avec les paires clé / valeur des autres clés existantes.
  11. values() : retourne une nouvelle vue des valeurs du dictionnaire

5. Quiz

Exercice 1
Comment créez-vous un dictionnaire vide en Python ?

a) {}
b) dict()
c) empty_dict()
d) new_dict()

Exercice 2
Quelle est la principale caractéristique des clés dans un dictionnaire Python ?

a) Elles doivent être uniques.
b) Elles peuvent être de n'importe quel type.
c) Elles sont ordonnées.
d) Elles ne peuvent pas être modifiées après avoir été ajoutées au dictionnaire.

Exercice 3
Comment ajoutez-vous une paire clé-valeur à un dictionnaire existant ?

a) dictionary.add(key, value)
b) dictionary.insert(key, value)
c) dictionary[key] = value
d) dictionary.update(key, value)

Exercice 4
Comment supprimez-vous une clé et sa valeur d'un dictionnaire en Python ?

a) dictionary.remove(key)
b) dictionary.pop(key)
c) dictionary.delete(key)
d) dictionary.clear(key)

Exercice 5
Comment accédez-vous à la valeur associée à une clé donnée dans un dictionnaire ?

a) dictionary.get(key)
b) dictionary.value(key)
c) dictionary[key]
d) dictionary.access(key)

Exercice 6
Quelle méthode renvoie une liste de toutes les clés dans un dictionnaire ?

a) keys()
b) get_keys()
c) list_keys()
d) all_keys()

Exercice 7
Comment parcourez-vous toutes les paires clé-valeur d'un dictionnaire en utilisant une boucle for ?

a) for key in dictionary.keys():
b) for item in dictionary:
c) for key, value in dictionary.items():
d) for value in dictionary.values():

Exercice 8
Quelle méthode renverse l'ordre des éléments d'un dictionnaire en Python 3.7+ ?

a) reverse()
b) invert()
c) reversed()
d) invert_dict()

Exercice 9
Comment copiez-vous un dictionnaire en Python ?

a) copy_dict = dictionary
b) copy_dict = dictionary.copy()
c) copy_dict = dict(dictionary)
d) Toutes les réponses ci-dessus sont correctes.

Exercice 10
Comment vérifiez-vous si une clé existe déjà dans un dictionnaire ?

a) key in dictionary
b) has_key(key, dictionary)
c) exists(key, dictionary)
d) is_key_present(key, dictionary)

  1. Solution 1 : a) {} et b) dict()
  2. Solution 2 : a) Elles doivent être uniques.
  3. Solution 3 : c) dictionary[key] = value
  4. Solution 4 : b) dictionary.pop(key)
  5. Solution 5 : c) dictionary[key]
  6. Solution 6 : a) keys()
  7. Solution 7 : c) for key, value in dictionary.items():
  8. Solution 8 : c) reversed() (voir paragraphe 3.5)
  9. Solution 9 : b) copy_dict = dictionary.copy()
  10. Solution 10: a) key in dictionary

 

 



 

Younes Derfoufi
CRMEF OUJDA

Leave a Reply