[Python-Dev] PEP 495 accepted

Alexander Belopolsky alexander.belopolsky at gmail.com
Tue Sep 22 16:55:50 CEST 2015


On Tue, Sep 22, 2015 at 10:43 AM, Guido van Rossum <guido at python.org> wrote:

> Based on the UTC/local diagram from the "Mind the Gap" section, am I
>> correct in thinking that the modified invariant that also covers times
>> in a gap is:
>>
>>     dt ==
>> datetime.fromtimestamp(dt.astimezone(utc).astimezone(dt.tzinfo).timestamp())
>>
>> That is, for local times that exist, the invariant "dt ==
>> dt.astimezone(utc).astimezone(dt.tzinfo)" holds, but for times that
>> don't exist, "dt.astimezone(utc).astimezone(dt.tzinfo)" will normalise
>> them to be a time that actually exists in the original time zone, and
>> that normalisation also effectively happens when calling
>> "dt.timestamp()".
>>
>
> That can't be right -- There is no way any fromtimestamp() call can return
> a time in the gap.
>

I don't think Nick said that.


> I think about the only useful invariant here is
>
>   dt.timestamp() == dt.astimezone(utc).timestamp() == dt.astimezone(<any
> other tz>).timestamp()
>

Yes, this is just another way to say that  .astimezone() conversions are
now "lossless."
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20150922/238793e0/attachment.html>


More information about the Python-Dev mailing list