Deutsch English Français Italiano |
<87r156v407.fsf@universite-de-strasbourg.fr.invalid> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.roellig-ltd.de!open-news-network.org!news.nobody.at!weretis.net!feeder8.news.weretis.net!news.mixmin.net!aioe.org!Faqf6A55NG1s8DSVkh3L9A.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: Mon code est lourd Date: Fri, 06 May 2022 21:46:00 +0200 Organization: =?utf-8?Q?Universit=C3=A9?= de Strasbourg Message-ID: <87r156v407.fsf@universite-de-strasbourg.fr.invalid> References: <62742832$0$22051$426a74cc@news.free.fr> <87zgjvvi8j.fsf@universite-de-strasbourg.fr.invalid> <627525b7$0$26300$426a74cc@news.free.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: gioia.aioe.org; logging-data="49382"; posting-host="Faqf6A55NG1s8DSVkh3L9A.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:tnMYH+hCWsEufLVcwlbjjoxpD7E= X-Notice: Filtered by postfilter v. 0.9.2 Bytes: 2505 Lines: 44 yves <yves@free.invalid> writes: > Le Thu, 05 May 2022 22:26:20 +0200, Alain Ketterlin a =C3=A9crit: > >> (Au passage : pourquoi utiliser des cha=C3=AEnes de caract=C3=A8res pour= les mois >> ? >> Un entier serait plus simple =C3=A0 manipuler.) > Pour ce qui est des cha=C3=AEnes de caract=C3=A8res, c'est surtout que j'= ai =C3=A9pur=C3=A9=20 > au maximum mon expos=C3=A9 du probl=C3=A8me. C'=C3=A9tait juste une remarque en passant. > En r=C3=A9alit=C3=A9, ma source de donn=C3=A9e actuelle c'est plut=C3=B4t= ce code l=C3=A0: > from datetime import datetime, timedelta, date > > def genereXdates2(): > dateDepart =3D "26012022" > dateFin =3D "07052022" > depart =3D datetime.strptime(dateDepart, '%d%m%Y') > fin =3D datetime.strptime(dateFin, '%d%m%Y') > date =3D depart > dict_transcodage =3D {"6": "S", "0": "D", "1":"L", "2":"M", "3":"M",= =20 > "4":"J", "5":"V"} > while date !=3D fin: >=20=20=20=20=20=20=20=20=20 > yield(date.strftime("%m"),dict_transcodage[date.strftime('%w')],d= ate.strftime('%d')) > date =3D date + timedelta(1) Je proposais d'utiliser =C3=A0 la place : yield (date.month, "LMMJVSD"[date.weekday()], date.day) (attention, weekday() ne suit pas la m=C3=AAme convention que "%w" pour str= ftime). C'est toi qui voit. -- Alain.