List Comprehension est un moyen pratique et plus rapide de créer des listes en Python en une seule ligne de code. Elle nous aide à écrire des boucles for faciles à lire en une seule ligne.
En Python, le dictionnaire est une structure de données permettant de stocker des données telles que chaque élément des données stockées est associé à une clé. La structure de données dictionnaire vous permet d’interroger les données en utilisant la clé de manière très efficace.
L’idée de compréhension n’est pas seulement propre aux listes en Python. Les dictionnaires, l’une des structures de données couramment utilisées en science des données, peuvent également faire de la compréhension. Avec la compréhension de dict ou la compréhension de dictionnaire, on peut facilement créer des dictionnaires.
Rappellez-vous que, en python, une liste est définie avec des crochets et un dictionnaire est défini avec des accolades {}. L’idée utilisée dans la compréhension de liste est reportée dans la définition de la compréhension de dict également. La compréhension de dict est définie avec une syntaxe similaire, mais avec une paire clé:valeur dans l’expression.
- {key:value for i in list}
Voyons 5 exemples simples d’utilisation de la compréhension de dict pour créer facilement de nouveaux dictionnaires.
On a ajouté un sixième exemple de compréhension de dict pour supprimer des clés dans un dictionnaire.
- Exemple de compréhension de dict 1
- Exemple de compréhension de dict 2
- Compréhension de dictionnaire Exemple 3
- Compréhension de dictionnaire Exemple 4
- Exemple de compréhension de dict 5
- Exemple de Dict Comprehension 6 : Comment supprimer les clés sélectionnées du dictionnaire en utilisant Dict Comprehension ?
Exemple de compréhension de dict 1
Voyons un exemple rapide de création d’une compréhension de dict à partir d’une liste de chiffres.
Ici, utilisons une liste de chiffres et créons un dictionnaire avec la valeur de la chaîne du chiffre comme clé et le chiffre comme valeurs.
# dict comprehension to create dict with numbers as values>{str(i):i for i in }{'1': 1, '3': 3, '2': 2, '5': 5, '4': 4}
Exemple de compréhension de dict 2
Disons que nous avons une liste de fruits et nous pouvons utiliser la compréhension de dict pour créer un dictionnaire avec les fruits, les éléments de la liste comme clés et la longueur de chaque chaîne comme valeurs.
# create list of fruits>fruits = # dict comprehension to create dict with fruit name as keys>{f:len(f) for f in fruits}{'cherry': 6, 'mango': 5, 'apple': 5, 'banana': 6}
Compréhension de dictionnaire Exemple 3
Disons que nous avons un dictionnaire avec la compréhension de dict tel que les éléments de la liste comme clés et les éléments avec la première lettre en majuscule comme valeurs.
>{f:f.capitalize() for f in fruits}{'cherry': 'Cherry', 'mango': 'Mango', 'apple': 'Apple', 'banana': 'Banana'}
Compréhension de dictionnaire Exemple 4
Disons que nous utilisons la fonction enumerate dans la compréhension de dictionnaire. Si vous n’avez pas utilisé enumerate : enumerate peut prendre n’importe quelle chose itérable en entrée et retourne l’élément et son index.
Ici, nous utilisons la fonction enumerate sur la liste pour créer des tuples d’index et d’éléments de liste et les utiliser pour créer un dictionnaire avec la compréhension du dict. Nous créons un dictionnaire avec les éléments de la liste comme clés et l’index des éléments comme valeurs. De tels dictionnaires avec index d’éléments sont souvent utiles dans une variété de scénarios.
# dict comprehension example using enumerate function>{f:i for i,f in enumerate(fruits)}{'cherry': 3, 'mango': 1, 'apple': 0, 'banana': 2}
Exemple de compréhension de dict 5
Une autre utilisation de la compréhension de dict est d’inverser clé:valeur dans un dictionnaire existant. Parfois, on peut vouloir créer un nouveau dictionnaire à partir d’un répertoire existant, de telle sorte que le rôle de la paire clé:valeur dans le premier dictionnaire soit inversé dans le nouveau dictionnaire. Nous pouvons utiliser Dict Comprehension et inverser le dictionnaire element to index en dictionnaire index to element.
# dict comprehension example to reverse key:value pair in a dictionary>f_dict = {f:i for i,f in enumerate(fruits)}>f_dict{'apple': 0, 'banana': 2, 'cherry': 3, 'mango': 1}# dict comprehension to reverse key:value pair in a dictionary>{v:k for k,v in f_dict.items()}{0: 'apple', 1: 'mango', 2: 'banana', 3: 'cherry'}
Nous avons utilisé la fonction items des dictionnaires pour obtenir les paires clé, valeur dans un dictionnaire existant et créé un nouveau dictionnaire où les clés du dictionnaire original sont des valeurs dans le nouveau dictionnaire et vice versa.
Exemple de Dict Comprehension 6 : Comment supprimer les clés sélectionnées du dictionnaire en utilisant Dict Comprehension ?
Disons que vous avez un dictionnaire et que vous voulez créer un nouveau dictionnaire en supprimant certaines paires clé-valeur. Nous pouvons utiliser la compréhension de dictionnaire pour supprimer les paires clé-valeur sélectionnées d’un dictionnaire et créer un nouveau dictionnaire.
Utilisons le dictionnaire « fruit » que nous avons créé ci-dessus.
fruits = f_d1 ={f:f.capitalize() for f in fruits}f_d1
Utilisons la compréhension de dictionnaire pour supprimer deux clés, apple et banana, et leurs valeurs du dictionnaire fruit.
# keys to be removed>remove_this = {'apple','cherry'}# dict comprehension example to delete key:value pairs in a dictionary>{key:f_d1 for key in f_d1.keys() - remove_this}{'banana': 'Banana', 'mango': 'Mango'}
Nous avons supprimé les clés, pomme et cerise, en utilisant simplement l’objet dict keys avec les opérations set et maintenant le nouveau dictionnaire ne contient que banane et mangue.