Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.python > #3837
| From | Benoit Izac <use.reply.to@INVALID.ADDRESS> |
|---|---|
| Newsgroups | fr.comp.lang.python |
| Subject | Re: Mon code est lourd |
| Date | 2022-05-05 22:12 +0200 |
| Message-ID | <875ymj4u3r.fsf@izac.org> (permalink) |
| References | <62742832$0$22051$426a74cc@news.free.fr> |
Bonjour,
Le 05/05/2022 à 21:40, yves <yves@free.invalid> a écrit dans le message
<62742832$0$22051$426a74cc@news.free.fr> :
> from pprint import pprint
>
> def g():
> yield('02', 'D', '27')
> yield('02', 'L', '28')
> yield('03', 'M', '01')
> yield('03', 'M', '02')
>
>
> dic = {}
> l02,l03 = [],[]
> for elt in g():
> m , d, nd = elt
> if m == "02":
> l02.append((d,nd))
> dic['02'] = l02
> elif m == "03":
> l03.append((d,nd))
> dic['03'] = l03
>
> pprint(dic)
>
> [...]
>
> Mais cette méthode de conversion du générateur en dictionnaire me
> paraît terriblement lourde, surtout qu'il y aura douze mois, c'est à
> dire douze branchement if/elif
>
> Vous auriez des suggestions d'écriture plus élégante ?
dic = {}
for m, d, nd in g():
dic.setdefault(m, []).append((d, nd))
pprint(dic)
--
Benoit Izac
Back to fr.comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar
Mon code est lourd yves <yves@free.invalid> - 2022-05-05 19:40 +0000
Re: Mon code est lourd yves <yves@free.invalid> - 2022-05-05 19:42 +0000
Re: Mon code est lourd yves <yves@free.invalid> - 2022-05-05 19:43 +0000
Re: Mon code est lourd yves <yves@free.invalid> - 2022-05-05 19:47 +0000
Re: Mon code est lourd yamo' <user@tld.invalid> - 2022-05-09 07:56 +0000
Re: Mon code est lourd yves <yves@free.invalid> - 2022-05-09 08:32 +0000
Re: Mon code est lourd Benoit Izac <use.reply.to@INVALID.ADDRESS> - 2022-05-05 22:12 +0200
Re: Mon code est lourd yves <yves@free.invalid> - 2022-05-06 13:22 +0000
Re: Mon code est lourd Alain Ketterlin <alain@universite-de-strasbourg.fr.invalid> - 2022-05-05 22:26 +0200
Re: Mon code est lourd Dominique <zzz@aol.com.invalid> - 2022-05-06 06:40 +0200
Re: Mon code est lourd Alain Ketterlin <alain@universite-de-strasbourg.fr.invalid> - 2022-05-06 11:30 +0200
Re: Mon code est lourd Dominique <zzz@aol.com.invalid> - 2022-05-06 15:43 +0200
Re: Mon code est lourd Eric Demeester <neuneu@potiron.invalid> - 2022-05-08 12:19 +0200
Re: Mon code est lourd yves <yves@free.invalid> - 2022-05-06 13:42 +0000
Re: Mon code est lourd Alain Ketterlin <alain@universite-de-strasbourg.fr.invalid> - 2022-05-06 21:46 +0200
Re: Mon code est lourd yves <yves@free.invalid> - 2022-05-06 20:50 +0000
csiph-web