Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.python > #3584
| From | Olivier Miakinen <om+news@miakinen.net> |
|---|---|
| Newsgroups | fr.comp.lang.python |
| Subject | Re: Supprimer efficacement "sur place" des valeurs d'un dictionnaire, dans une fonction |
| Date | 2021-06-18 06:18 +0200 |
| Organization | There's no cabale |
| Message-ID | <sah6qr$17v2$1@cabale.usenet-fr.net> (permalink) |
| References | <sagccn$10af$1@cabale.usenet-fr.net> <87wnqs84ak.fsf@universite-de-strasbourg.fr.invalid> |
Bonjour Alain,
Le 18/06/2021 01:22, Alain Ketterlin m'a répondu :
>>
>> Par exemple je pourrais écrire :
>>
>> def moins(dict1, dict2):
>> for k in dict2:
>> del dict1[k]
>> return dict1 == {}
>>
>> [...]
>>
>> Existe-t-il une méthode plus efficace ?
>
> Pas que je sache (en général les dictionnaires ne sont pas optimisés en
> priorité pour la suppression). J'imagine que ton dictionnaire est
> référencé par ailleurs, donc ta première fonction est sûrement la bonne.
Merci de ta réponse.
> Pour le booléen en retour, tu peux aussi utiliser :
> - return len(dict1) == 0
Oui.
> - return bool(dict1)
En l'occurrence, plutôt :
- return not dict1
> Je n'aime pas les conversions, mais ici le test sera fait de la
> "meilleure" façon possible (j'imagine).
Ok. Et encore merci.
--
Olivier Miakinen
Back to fr.comp.lang.python | Previous | Next — Previous in thread | Find similar
Supprimer efficacement "sur place" des valeurs d'un dictionnaire, dans une fonction Olivier Miakinen <om+news@miakinen.net> - 2021-06-17 22:47 +0200
Re: Supprimer efficacement "sur place" des valeurs d'un dictionnaire, dans une fonction Alain Ketterlin <alain@universite-de-strasbourg.fr.invalid> - 2021-06-18 01:22 +0200
Re: Supprimer efficacement "sur place" des valeurs d'un dictionnaire, dans une fonction Olivier Miakinen <om+news@miakinen.net> - 2021-06-18 06:18 +0200
csiph-web