On Sun, Dec 20, 2015 at 7:25 PM, Alexander Belopolsky <
alexander.belopol...@gmail.com> wrote:

>
> On Sun, Dec 20, 2015 at 9:00 PM, Guido van Rossum <gu...@python.org>
> wrote:
>
>> but I would really like to see a change in the repr of negative
>>> timedeltas:
>>>
>>> >>> timedelta(minutes=-1)
>>> datetime.timedelta(-1, 86340)
>>>
>>> And str() is not much better:
>>>
>>> >>> print(timedelta(minutes=-1))
>>> -1 day, 23:59:00
>>>
>>> The above does not qualify as a human readable representation IMO.
>>>
>>
>> I'm sure that one often catches people by surprise. However, I don't
>> think we can fix that one without also fixing the values of the attributes
>>
>
> I don't see why we have to change td.days for say td =
>  timedelta(minutes=-1) if we change its repr to "timedelta(minutes=-1)".
> For me an important invariant is td == eval(repr(td)) which will be
> preserved.
>

Then please just trust me. If the repr() shows different numbers than the
attributes things are worse than now. People will casually look at the
repr() and assume they've seen what the attributes will return, and spend
hours debugging code that relies on that incorrect assumption.

-- 
--Guido van Rossum (python.org/~guido)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to