[python] Comment vérifier si la clé existe dans le dictionnaire

single key Utilisez in pour vérifier si la clé existe dans le dictionnaire.

La clé dans dict.keys () ou la clé dans dict peut être utilisée comme indiqué ci-dessous.

In [2]: D = {'abc': 1, 'def': 2, 'ghi': 3, 'jkl' : 4}

In [3]: 'abc' in D.keys()
Out[3]: True

In [4]: 'xyz' in D.keys()
Out[4]: False

In [5]: 'abc' in D
Out[5]: True

Au fait, il est bon de l'utiliser également s'il y a une valeur

In [6]: 1 in D.values()
Out[6]: True

In [7]: 5 in D.values()
Out[7]: False

multiple keys

Comment vérifier si toutes les clés existent

Utilisez l'objet de vue Dictionnaire pour vérifier s'il existe plusieurs clés. La méthode d'acquisition de l'objet de vue Dictonary a changé entre python2.7 et python3. Utilisez viewkeys () pour python2.7 et keys () pour python3.

python2.7

python2.7


In [8]: D.viewkeys() >= {'abc', 'def'}
Out[8]: True

In [9]: D.viewkeys() >= {'abc', 'xyz'}
Out[9]: False

python3 En python3, les viewkeys deviennent des clés.

In [3]: D.keys() >= {'abc', 'def'}
Out[3]: True

In [4]: D.keys() >= {'abc', 'xyz'}
Out[4]: False

Pour que cela fonctionne sur les deux, utilisez six et écrivez comme suit.

In [6]: import six

In [7]: six.viewkeys(D) >= {'abc', 'def'}
Out[7]: True

In [8]: six.viewkeys(D) >= {'abc', 'xyz'}
Out[8]: False

Comment utiliser set

La méthode que @shiracamus m'a indiquée dans les commentaires. Dans ce cas, il n'est pas nécessaire d'en importer six et c'est chouette.

In [21]: set(D) >= {'abc', 'def'}
Out[21]: True

In [22]: set(D) >= {'abc', 'xyz'}
Out[22]: False

Comment utiliser pour loop & all

La méthode que @shiracamus m'a indiquée dans les commentaires.

In [2]: all(key in D for key in ('abc', 'def'))
Out[2]: True

In [3]: all(key in D for key in ('abc', 'xyz'))
Out[3]: False

Comment vérifier si au moins une clé existe

Dans l'objet de vue dictionnaire, vous pouvez utiliser & pour prendre une intersection. https://docs.python.org/2/library/stdtypes.html#dictionary-view-objects

python2.7

In [14]: len(D.viewkeys() & {'abc', 'xyz'}) > 0
Out[14]: True

In [15]: len(D.viewkeys() & {'x', 'xyz'}) > 0
Out[15]: False

python3

In [10]: len(D.keys() & {'abc','xyz'}) > 0
Out[10]: True

In [11]: len(D.keys() & {'x','xyz'}) > 0
Out[11]: False

Comment utiliser pour la boucle et tout

La méthode que @shiracamus m'a indiquée dans les commentaires.

In [25]: any(key in D for key in ('abc', 'xyz'))
Out[25]: True

In [26]: any(key in D for key in ('abc', 'def'))
Out[26]: True

In [27]: any(key in D for key in ('x', 'xyz'))
Out[27]: False

référence: https://stackoverflow.com/questions/16004593/python-what-is-best-way-to-check-multiple-keys-exists-in-a-dictionary https://docs.python.org/2/library/stdtypes.html#dictionary-view-objects

Recommended Posts

[python] Comment vérifier si la clé existe dans le dictionnaire
Vérifiez si l'URL existe en Python
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
Comment vérifier si le contenu du dictionnaire est le même en Python par valeur de hachage
Comment vérifier si une valeur existe dans un type d'énumération
Comment vérifier la version d'opencv avec python
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
Comment vérifier la taille de la mémoire d'une variable en Python
Comment déterminer qu'une clé croisée a été entrée dans Python3
Comment utiliser la bibliothèque C en Python
Vérifiez si les caractères sont similaires en Python
Comment obtenir les fichiers dans le dossier [Python]
Comment développer en Python
Vérifiez si la chaîne est un nombre en python
Comment récupérer la nième plus grande valeur en Python
Comment obtenir le nom de la variable lui-même en python
Comment obtenir le nombre de chiffres en Python
Vérifiez si la colonne attendue existe dans Pandas DataFrame
Comment connaître le répertoire actuel en Python dans Blender
Comment utiliser la clause exist dans l'ensemble de requêtes Django
[Introduction à Udemy Python3 + Application] 27. Comment utiliser le dictionnaire
Comment utiliser le modèle appris dans Lobe en Python
[Python] Comment afficher les valeurs de liste dans l'ordre
Comment vérifier automatiquement si le code que vous avez écrit dans Google Colaboratory correspond à la norme de codage python "pep8"
[Python] Comment faire PCA avec Python
Comment déboguer une bibliothèque Python standard dans Visual Studio
Comment collecter des images en Python
Comment stocker une fonction Python dans la valeur d'un dictionnaire (dict) et appeler la fonction en fonction de la clé
Comment utiliser la méthode __call__ dans la classe Python
Comment utiliser SQLite en Python
[Python] Comment écrire une instruction if en une phrase.
Dans la commande python, python pointe vers python3.8
Comment obtenir la version Python
Comment vérifier s'il est dans le type de dictionnaire (Dictionary, Hash) en utilisant tout ou partie
Une note lors de la vérification si la clé spécifiée existe dans le dictionnaire défini avec python
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Comment utiliser Mysql avec python
Comment obtenir toutes les clés et valeurs du dictionnaire
Comment envelopper C en Python
Comment utiliser ChemSpider en Python
Comment utiliser PubChem avec Python
Comment gérer le japonais avec Python
Obtenir la valeur d'une clé spécifique jusqu'à l'index spécifié de la liste de dictionnaires en Python
Comment activer l'instruction for lorsqu'il existe plusieurs valeurs pour une clé dans le dictionnaire
Comment déterminer l'existence d'un élément sélénium en Python
Comment connaître la structure interne d'un objet en Python
Vérifiez si le hachage de mot de passe généré par PHP correspond en Python
Le 15e comment écrire un problème de référence en temps réel hors ligne en Python
17e comment résoudre les problèmes d'écriture en temps réel hors ligne avec Python
Comment utiliser l'astérisque (*) en Python. C'est peut-être tout? ..
[Introduction à Python] Comment utiliser l'opérateur in dans l'instruction for?
[TensorFlow 2] Comment vérifier le contenu de Tensor en mode graphique
Vérifiez si vous pouvez vous connecter à un port TCP en Python
Le 14ème problème de référence d'écriture en temps réel hors ligne en python
Assurez-vous que python peut convertir / convertir une chaîne de caractères en int
[Note du débutant] Comment spécifier le chemin de lecture de la bibliothèque en Python
Le 18ème comment écrire un problème de référence en temps réel hors ligne en Python
Comment afficher les octets de la même manière en Java et Python
[Introduction à Python] Comment utiliser la classe en Python?