Deutsch   English   Français   Italiano  
<t6gd3m$335$1@gioia.aioe.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder8.news.weretis.net!usenet.goja.nl.eu.org!aioe.org!ygIiNqcM2iOjR4FHaU3oIw.user.46.165.242.91.POSTED!not-for-mail
From: Dominique <zzz@aol.com.invalid>
Newsgroups: fr.comp.lang.python
Subject: =?UTF-8?Q?Re=3a_=c3=89cart_entre_deux_dates=2e?=
Date: Mon, 23 May 2022 18:35:01 +0200
Organization: Aioe.org NNTP Server
Message-ID: <t6gd3m$335$1@gioia.aioe.org>
References: <t6dghv$1nu1$1@gioia.aioe.org>
 <628b738e$0$18399$426a74cc@news.free.fr>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="3173"; posting-host="ygIiNqcM2iOjR4FHaU3oIw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
 Thunderbird/91.9.0
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: fr
Bytes: 2466
Lines: 40

Le 23/05/2022 à 13:44, Damien Wyart a écrit :

> 
> Comme indiqué par Nicolas, parse permet d'analyser une chaîne pour en
> extraire un object DataTime. La bibliothèque standard permet déjà de le
> faire mais de manière moins souple et avec moins de support de formats
> multiples. parser n'est pas une fonction mais permet juste de "ranger"
> les différents noms dans le module dateutil. En arrière-plan, il
> correspond aussi à une classe Parser, interne au module.

OK, je comprends mieux parse qui est une fonction de dateutil.

>                                      
> Comme Nicolas l'a également proposé, on peut très bien tout faire en
> Python standard (je montre deux façons de créer des DateTime) :
>                          
> from datetime import date
>                                       
> d1 = date.fromisoformat('2022-06-10')
> d2 = date(2022, 1, 1)
> print(d1-d2)
> 
> -> donne "160 days, 0:00:00"
> 
> pour cet exercice, plus que parse, c'est peut-être relativedelta, du
> module dateutil, qui est pertinent :
> 
> from dateutil.relativedelta import relativedelta
> print(relativedelta(d1, d2))
> 
> -> donne "relativedelta(months=+5, days=+9)" qui est peut-être plus
>     facile à appréhender pour un humain :)
> 

Je vous remercie tous pour vos précisions et les options que vous me 
proposez. Je suis toujours étonné par la richesse de Python :-)

Bonne fin de journée,

Dominique