Comment vérifier si une valeur se trouve dans un dictionnaireen Python
-
Utilisez
get()
et Key pour vérifier si la valeur existe dans un dictionnaire -
Utilisez
values()
pour vérifier si la valeur spécifiée existe dans un dictionnaire - Vérifier si une valeur existe dans un dictionnaire si la valeur est une liste
Ce tutoriel montre comment vérifier si une valeur existe dans un dictionnaire Python. Nous aborderons ici des sujets pertinents, tels que la recherche d’une valeur donnée par une clé, la recherche d’une valeur spécifique et la recherche d’une valeur qui est un objet ou une collection.
Pour commencer, vous voudrez imprimer True
si la valeur existe dans le dictionnaire ; sinon, imprimez False
.
Utilisez get()
et Key pour vérifier si la valeur existe dans un dictionnaire
Les dictionnaires en Python ont une fonction intégrée key()
, qui retourne la valeur de la clé donnée. En même temps, elle retournerait None
si elle n’existe pas. Vous pouvez utiliser cette fonction comme condition pour déterminer si une valeur existe ou non dans un dictionnaire.
Commençons par déclarer un dictionnaire simple avec des clés int
et des valeurs de chaîne.
simpDict = {1: "Ant", 2: "Bear", 3: "Cat", 4: "Dog", 5: "Elephant"}
Si vous voulez rechercher la valeur en utilisant sa paire de clés, alors la fonction key()
est la solution. Par exemple, vous voulez rechercher n’importe quelle valeur avec le 6 comme clé ; suivez le code ci-dessous.
if simpDict.key(6) != None:
print("True")
else:
print("False")
Puisque la fonction simpDict
n’a pas la clé 6, ce bloc de code produira un False
.
Utilisez values()
pour vérifier si la valeur spécifiée existe dans un dictionnaire
Contrairement à la recherche d’une valeur spécifique, la recherche d’une clé dans un dictionnaire est très simple ; il suffit d’utiliser le mot-clé in
et la clé que vous recherchez dans le dictionnaire.
print(3 in simpDict)
Vous obtiendrez alors la mention True
puisque la clé 3 existe. Si nous remplaçons le nombre par une clé inexistante, alors le résultat sera False
.
D’autre part, vous pouvez utiliser la fonction values()
si vous voulez chercher une valeur spécifique dans le dictionnaire. La commande values()
renverra une liste de toutes les valeurs d’un dictionnaire. En utilisant values()
, vous pouvez utiliser le mot-clé in
du dictionnaire et la valeur spécifiée. Supposons que vous vouliez savoir si la valeur Elephant
est dans le dictionnaire, exécutez le code suivant :
print("Elephant" in simpDict.values())
Cette ligne affichera True
puisque le mot elephant existe dans simpDict
sur la touche 5.
En Python 2.X, il y a aussi deux autres fonctions similaires aux values()
, ce sont les itervalues()
et les viewvalues()
; ces fonctions ont été dépréciées dans les versions Python 3.X.
Les commandes itervalues()
et viewvalues()
feront la même tâche que la commande values()
; cependant, des implémentations différentes, bien que très négligeables, affectent grandement le temps d’exécution.
print("Elephant" in simpDict.itervalues())
print("Elephant" in simpDict.viewvalues())
Les deux retourneront la même sortie que la fonction values()
. Il est important de noter que la redondance est probablement la raison principale pour laquelle ces fonctions ont été dépréciées dans les nouvelles versions de Python.
Maintenant, que faire si les valeurs d’un dictionnaire sont des structures de données comme une liste ou un objet ? C’est ce que nous allons découvrir.
Vérifier si une valeur existe dans un dictionnaire si la valeur est une liste
listDict = {1: ["a", "b"], 2: ["b", "c"], 3: ["c", "d"], 4: ["d", "e"]}
Nous avons maintenant un dictionnaire avec des touches int
et une liste de caractères comme valeurs.
Disons que nous voulons rechercher si la liste ['c', 'd']
existe dans le dictionnaire.
print(["c", "d"] in listDict.values())
Le résultat serait True
; cela confirme que la comparaison des collections par itération du dictionnaire fonctionne également.
Mais que faire si vous voulez vérifier si une valeur d’une liste existe dans le dictionnaire ? Pour résoudre ce problème, il suffit de boucler sur les valeurs et d’utiliser le mot-clé in
dans la liste, au lieu du dictionnaire.
Par exemple, vous voulez vérifier si le caractère 'e'
existe dans les valeurs de cette liste ou non. Voici le code à exécuter pour cela :
tof = False
for value in listDict.values():
if "e" in value:
tof = True
break
print(tof)
La sortie affichera True
puisque 'e'
existe dans le dictionnaire.
En résumé, utilisez la fonction values()
pour itérer sur les valeurs et comparer si la valeur que vous recherchez existe dans la liste des valeurs. Ceci est utile lorsque vous voulez vérifier si une valeur spécifiée existe dans un dictionnaire.
Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.
LinkedInArticle connexe - Python Dictionary
- Comment vérifier si une clé existe dans un dictionnaire en Python
- Convertir un dictionnaire en liste en Python
- Comment obtenir tous les fichiers d'un répertoire
- Comment trouver la valeur maximale dans le dictionnaire Python
- Comment trier un dictionnaire Python par valeur
- Comment fusionner deux dictionnaires en Python 2 et 3