Path: ...!news.roellig-ltd.de!open-news-network.org!news.nobody.at!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!cleanfeed1-b.proxad.net!nnrp6-1.free.fr!not-for-mail From: yves Subject: Re: Mon code est lourd Newsgroups: fr.comp.lang.python References: <62742832$0$22051$426a74cc@news.free.fr> <87zgjvvi8j.fsf@universite-de-strasbourg.fr.invalid> User-Agent: Pan/0.144 (Time is the enemy; 28ab3ba git.gnome.org/pan2) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Date: 06 May 2022 13:42:15 GMT Lines: 44 Message-ID: <627525b7$0$26300$426a74cc@news.free.fr> Organization: Guest of ProXad - France NNTP-Posting-Date: 06 May 2022 15:42:15 CEST NNTP-Posting-Host: 89.226.117.233 X-Trace: 1651844535 news-1.free.fr 26300 89.226.117.233:38832 X-Complaints-To: abuse@proxad.net Bytes: 2056 Le Thu, 05 May 2022 22:26:20 +0200, Alain Ketterlin a écrit: > (Au passage : pourquoi utiliser des chaînes de caractères pour les mois > ? > Un entier serait plus simple à manipuler.) Merci pour toute cette matière à réflexion. Pour ce qui est des chaînes de caractères, c'est surtout que j'ai épuré au maximum mon exposé du problème. En réalité, ma source de donnée actuelle c'est plutôt ce code là: *** #+begin_src python :results output :exports both from datetime import datetime, timedelta, date def genereXdates2(): dateDepart = "26012022" dateFin = "07052022" depart = datetime.strptime(dateDepart, '%d%m%Y') fin = datetime.strptime(dateFin, '%d%m%Y') date = depart dict_transcodage = {"6": "S", "0": "D", "1":"L", "2":"M", "3":"M", "4":"J", "5":"V"} while date != fin: yield(date.strftime("%m"),dict_transcodage[date.strftime('%w')],date.strftime('%d')) date = date + timedelta(1) for elt in genereXdates2(): print(elt) #+end_src **** @+ -- Yves