Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.python > #3820
| Path | csiph.com!newsfeed.xs4all.nl!newsfeed9.news.xs4all.nl!news.uzoreto.com!aioe.org!9ySnaoA89KpIvxcESJFCUw.user.46.165.242.75.POSTED!not-for-mail |
|---|---|
| From | Alain Ketterlin <alain@universite-de-strasbourg.fr.invalid> |
| Newsgroups | fr.comp.lang.python |
| Subject | Re: Vérifier la présence de plusieurs clés dans un dictionnaire |
| Date | Tue, 26 Apr 2022 19:37:49 +0200 |
| Organization | Université de Strasbourg |
| Message-ID | <874k2fwxsi.fsf@universite-de-strasbourg.fr.invalid> (permalink) |
| References | <t475fb$17ub$1@cabale.usenet-fr.net> <t4761d$1839$1@cabale.usenet-fr.net> <878rrsw4mx.fsf@universite-de-strasbourg.fr.invalid> <t498hb$21nm$1@cabale.usenet-fr.net> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8 |
| Content-Transfer-Encoding | quoted-printable |
| Injection-Info | gioia.aioe.org; logging-data="50422"; posting-host="9ySnaoA89KpIvxcESJFCUw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org"; |
| User-Agent | Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
| Cancel-Lock | sha1:cIgA+d6i7veS0oYGRGMSF8h6RhU= |
| X-Notice | Filtered by postfilter v. 0.9.2 |
| Xref | csiph.com fr.comp.lang.python:3820 |
Show key headers only | View raw
Olivier Miakinen <om+news@miakinen.net> writes: >>> not (keys - d.keys()) > <https://docs.python.org/fr/3.8/library/stdtypes.html#frozenset.difference> > § > Remarque : Les méthodes union(), intersection(), difference(), et > symmetric_difference(), issubset(), et issuperset() acceptent n'importe > quel itérable comme argument, contrairement aux opérateurs équivalents > qui n'acceptent que des sets. > § > > En lisant cette remarque, j'ai cru à tort qu'elle disait que « - » > acceptait n'importe quel itérable à gauche et à droite, alors qu'au > ça ne vaut pour « difference() », et encore, seulement pour son > argument ! > > Bon, il se trouve que ça marche (et que ça retourne effectivement un > set) mais je suis bien sûr preneur d'une meilleure solution. Oui, mais je pense que ça marche grâce aux "reflected/swapped operands", qui fait si il n'y a pas de __sub__ sur list, la méthode __rsub__ de set (ou ce que renvoie keys()) est utilisée... https://docs.python.org/3/reference/datamodel.html#object.__radd__ >> all (k in d for k in keys) > Ni le dictionnaire ni la liste ne sont très gros (moins de 20 entrées > pour le dictionnaire, et entre 3 et 6 pour la liste), mais ta solution > présente surtout l'intérêt d'être plus lisible. Cette commande 'all' > est vraiment ce qu'il me faut ! Dans ce cas, "beauty is in the eye of the beholder", choisis ce que tu comprendras le plus facilement quand tu reliras le code dans 3 semaines/mois/années/. -- Alain.
Back to fr.comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar
Vérifier la présence de plusieurs clés dans un dictionnaire Olivier Miakinen <om+news@miakinen.net> - 2022-04-25 23:56 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Olivier Miakinen <om+news@miakinen.net> - 2022-04-26 00:06 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Nicolas <nicolasp@aaton.com> - 2022-04-26 10:03 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Alain Ketterlin <alain@universite-de-strasbourg.fr.invalid> - 2022-04-26 11:55 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Olivier Miakinen <om+news@miakinen.net> - 2022-04-26 19:01 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Alain Ketterlin <alain@universite-de-strasbourg.fr.invalid> - 2022-04-26 19:37 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Olivier Miakinen <om+news@miakinen.net> - 2022-04-26 22:07 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Olivier Miakinen <om+news@miakinen.net> - 2022-04-26 22:32 +0200
Re: Vérifier la présence de plusieurs clés dans un dictionnaire Olivier Miakinen <om+news@miakinen.net> - 2022-04-27 15:10 +0200
csiph-web