Deutsch English Français Italiano |
<uv13v9$3jck7$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Dominique <dominique.sextant@orange.fr.invalid> Newsgroups: fr.comp.lang.python Subject: =?UTF-8?Q?Curiosit=C3=A9_avec_datetime?= Date: Mon, 8 Apr 2024 17:54:16 +0200 Organization: A noiseless patient Spider Lines: 51 Message-ID: <uv13v9$3jck7$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Mon, 08 Apr 2024 15:54:18 +0200 (CEST) Injection-Info: dont-email.me; posting-host="99d96eb37162077561db8e47041c6458"; logging-data="3781255"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/4rVzv3tOcHGZS9RnZL4DDfbVfJePAny4=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:j76uALV7CI6b0Xns2L3qYFOrH10= Content-Language: fr Bytes: 2593 Bonjour, Je découvre datetime. Je suis étonné par le traitement de l'entrée en vigueur du calendrier grégorien. Mon script est très simple : print('Nombre de jours entre deux dates') t=input('Date de départ de la forme jj-mm-aaaa hh:mm:ss ') t1=input('Date d\'arrivée de la forme jj-mm-aaaa hh:mm:ss ') match='%d-%m-%Y %H:%M:%S' tc=datetime.strptime(t,match) tc1=datetime.strptime(t1,match) print(tc1-tc) et la sortie : Nombre de jours entre deux dates Date de départ de la forme jj-mm-aaaa hh:mm:ss 4-10-1582 0:0:0 Date d'arrivée de la forme jj-mm-aaaa hh:mm:ss 15-10-1582 0:0:0 11 days, 0:00:00 Il ne devrait y avoir qu'un unique jour entre les deux dates. Datetime serait incapable de traiter le changement de calendrier ? Je suppose que oui, à la lecture de la documentation (https://docs.python.org/3/library/datetime.html) : class datetime.date An idealized naive date, assuming the current Gregorian calendar always was, and always will be, in effect. Bon, soit. Je tente avec Time de astropy. Même résultat : Le 4 / 10 / 1582 à 0 h 0 correspond au jour julien (JD) : 2299149.5 Ainsi qu'au jour julien modifié (MJD) -100851.0 et Le 15 / 10 / 1582 à 0 h 0 correspond au jour julien (JD) : 2299160.5 Ainsi qu'au jour julien modifié (MJD) -100840.0 J'ai toujours, à tort, 11 jours d'écart. Mon analyse est-elle bonne, à savoir que tant datetime que astropy traitent mal ce changement de calendrier ? Pour être franc, j'ai un peu de mal à le croire et je tends à penser que je dois me tromper, mais où... ? Merci et belle fin de journée, -- Dominique Esto quod es