Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.lang.python > #4058

Re: datetime : passer d'« offset-naive » à « offset-aware »

From Olivier Miakinen <om+news@miakinen.net>
Newsgroups fr.comp.lang.python
Subject Re: datetime : passer d'« offset-naive » à « offset-aware »
Date 2023-05-14 21:56 +0200
Organization There's no cabale
Message-ID <u3reda$291m$1@cabale.usenet-fr.net> (permalink)
References <u3rcqv$28fu$1@cabale.usenet-fr.net>

Show all headers | View raw


Re-bonjour,

Le 14/05/2023 21:29, Olivier Miakinen a écrit :
> 
> Je voudrais pouvoir comparer en python des dates de courriels, au format défini
> par le RFC2822. Pour cela, j'utilise la fonction parsedate_to_datetime() qui est
> définie dans le module email.utils :
> 
> from email.utils import parsedate_to_datetime
> date = parsedate_to_datetime("Sat, 13 May 2023 12:00:00 +0200")
> 
> [...] comment détecter qu'un datetime n'a pas de tzinfo, et dans
> ce cas seulement lui coller le tzinfo=datetime.timezone.utc ? Ou bien, autre
> solution, est-ce que je peux remplacer parsedate_to_datetime() par une fonction
> qui définirait bien le tzinfo dans tous les cas ?

Bon, RTFM comme on dit, j'ai lu le manuel et j'arrive à ça :

===============================================================
from email.utils import parsedate_to_datetime
from datetime import datetime, timezone

def my_parsedate(rfc2822_date):
    d = parsedate_to_datetime(rfc2822_date)
    if (d.tzinfo is None) or (d.tzinfo.utcoffset(d) is None):
        # d is a naive timedate, make it aware
        d = datetime.combine(d.date(), d.time(), timezone.utc)
    return d
===============================================================

Est-ce que ça vous semble correct ? Et si même ça l'est, y aurait-il mieux ?


Cordialement,
-- 
Olivier Miakinen

Back to fr.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

datetime : passer d'« offset-naive » à « offset-aware » Olivier Miakinen <om+news@miakinen.net> - 2023-05-14 21:29 +0200
  Re: datetime : passer d'« offset-naive » à « offset-aware » Olivier Miakinen <om+news@miakinen.net> - 2023-05-14 21:56 +0200
    Re: datetime : passer d'« offset-naive » à « offset-aware » Olivier Miakinen <om+news@miakinen.net> - 2023-05-14 22:20 +0200
      Re: datetime : passer d'« offset-naive » à « offset-aware » Thierry Pinelli <festiventu+news@gmail.com> - 2023-05-15 10:36 +0200
        Re: datetime : passer d'« offset-naive » à « offset-aware » Olivier Miakinen <om+news@miakinen.net> - 2023-05-15 15:33 +0200
          Re: datetime : passer d'« offset-naive » à « offset-aware » "pata...@gmail.com" <patatetom@gmail.com> - 2023-05-25 06:48 -0700
            Re: datetime : passer d'« offset-naive » à « offset-aware » Olivier Miakinen <om+news@miakinen.net> - 2023-05-25 17:31 +0200
              Re: datetime : passer d'« offset-naive » à « offset-aware » Jo Engo <yl@icite.fr> - 2024-12-28 17:16 +0000
                Re: datetime : passer d'« offset-naive » à « offset-aware » Olivier Miakinen <om+news@miakinen.net> - 2024-12-28 21:13 +0100

csiph-web