Re: Vérifier la présence de plusieurs clés dans un dictionnaire

Liste des GroupesRevenir à fcl python 
Sujet : Re: Vérifier la présence de plusieurs clés dans un dictionnaire
De : om+news (at) *nospam* miakinen.net (Olivier Miakinen)
Groupes : fr.comp.lang.python
Date : 27. Apr 2022, 15:10:06
Autres entêtes
Organisation : There's no cabale
Message-ID : <t4bfbf$6s0$1@cabale.usenet-fr.net>
References : 1 2
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4
Le 26/04/2022 00:06, je me répondais :
 
Soit maintenant une liste de plusieurs clés keys=[key1, key2, ... keyn].

En réalité je ne sais pas pourquoi j'en ai fait une liste, c'est réellement
un ensemble qui correspond le mieux au besoin : keys={key1, key2, ... keyn}

Quelle serait la façon la plus économique pour vérifier que toutes les clés
listées dans keys sont présentes dans le dictionnaire d ? Je n'ai pas besoin
de savoir précisément quelles clés sont présentes, je voudrais juste un test
qui me réponde True si tous les élements de keys sont bien des clés dans d,
False si au moins un élément de keys n'est pas une clé dans d.
 
Ceci devrait faire l'affaire :
  not (keys - d.keys())

Alain Ketterlin m'a donné une solution élégante avec all() mais je viens
d'en trouver une autre, à condition d'avoir un ensemble de clés plutôt
qu'une liste, et sans créer de nouveau set :
 keys.issubset(d.keys())

D'ailleurs j'utilisais déjà une construction similaire ailleurs dans le
code, quand je voulais vérifier au contraire que toutes les clés du
dictionnaire font partie de celles autorisées dans l'ensemble keys :
 keys.issuperset(d.keys())

<https://docs.python.org/fr/3/library/stdtypes.html?highlight=issuperset#frozenset.issubset>

Quant à ce que j'avais résolu avec un any(), il pourrait aussi se faire
avec un « not isdisjoint() ».

--
Olivier Miakinen

Date Sujet#  Auteur
25 Apr 22 * Vérifier la présence de plusieurs clés dans un dictionnaire9Olivier Miakinen
26 Apr 22 `* Re: Vérifier la présence de plusieurs clés dans un dictionnaire8Olivier Miakinen
26 Apr 22  +- Re: Vérifier la présence de plusieurs clés dans un dictionnaire1Nicolas
26 Apr 22  +* Re: Vérifier la présence de plusieurs clés dans un dictionnaire5Alain Ketterlin
26 Apr 22  i+* Re: Vérifier la présence de plusieurs clés dans un dictionnaire3Olivier Miakinen
26 Apr 22  ii`* Re: Vérifier la présence de plusieurs clés dans un dictionnaire2Alain Ketterlin
26 Apr 22  ii `- Re: Vérifier la présence de plusieurs clés dans un dictionnaire1Olivier Miakinen
26 Apr 22  i`- Re: Vérifier la présence de plusieurs clés dans un dictionnaire1Olivier Miakinen
27 Apr 22  `- Re: Vérifier la présence de plusieurs clés dans un dictionnaire1Olivier Miakinen

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal