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