Browse Source
bpo-32417: Make timedelta arithmetic respect subclasses (#10902)
bpo-32417: Make timedelta arithmetic respect subclasses (#10902)
* Make timedelta return subclass types Previously timedelta would always return the `date` and `datetime` types, regardless of what it is added to. This makes it return an object of the type it was added to. * Add tests for timedelta arithmetic on subclasses * Make pure python timedelta return subclass types * Add test for fromtimestamp with tz argument * Add tests for subclass behavior in now * Add news entry. Fixes: bpo-32417 bpo-35364 * More descriptive variable names in tests Addresses Victor's commentspull/11759/head
committed by
Alexander Belopolsky
4 changed files with 90 additions and 19 deletions
-
10Lib/datetime.py
-
83Lib/test/datetimetester.py
-
6Misc/NEWS.d/next/Library/2018-12-04-13-35-36.bpo-32417._Y9SKM.rst
-
10Modules/_datetimemodule.c
@ -0,0 +1,6 @@ |
|||
Performing arithmetic between :class:`datetime.datetime` subclasses and |
|||
:class:`datetime.timedelta` now returns an object of the same type as the |
|||
:class:`datetime.datetime` subclass. As a result, |
|||
:meth:`datetime.datetime.astimezone` and alternate constructors like |
|||
:meth:`datetime.datetime.now` and :meth:`datetime.fromtimestamp` called with |
|||
a ``tz`` argument now *also* retain their subclass. |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue