mirror of
https://github.com/python/cpython.git
synced 2025-10-03 13:45:29 +00:00
bpo-30516: Fix documentation issue with -timedelta in datetime (GH-7348)
This commit fixes the -timedelta overfllow issue not documented properly. Signed-off-by: Farhaan Bukhsh <farhaan.bukhsh@gmail.com>
This commit is contained in:
parent
a390cb6b6f
commit
5b6e49a139
1 changed files with 6 additions and 5 deletions
|
@ -241,7 +241,7 @@ Supported operations:
|
||||||
+--------------------------------+-----------------------------------------------+
|
+--------------------------------+-----------------------------------------------+
|
||||||
| ``t1 = t2 - t3`` | Difference of *t2* and *t3*. Afterwards *t1* |
|
| ``t1 = t2 - t3`` | Difference of *t2* and *t3*. Afterwards *t1* |
|
||||||
| | == *t2* - *t3* and *t2* == *t1* + *t3* are |
|
| | == *t2* - *t3* and *t2* == *t1* + *t3* are |
|
||||||
| | true. (1) |
|
| | true. (1)(6) |
|
||||||
+--------------------------------+-----------------------------------------------+
|
+--------------------------------+-----------------------------------------------+
|
||||||
| ``t1 = t2 * i or t1 = i * t2`` | Delta multiplied by an integer. |
|
| ``t1 = t2 * i or t1 = i * t2`` | Delta multiplied by an integer. |
|
||||||
| | Afterwards *t1* // i == *t2* is true, |
|
| | Afterwards *t1* // i == *t2* is true, |
|
||||||
|
@ -317,6 +317,11 @@ Notes:
|
||||||
>>> print(_)
|
>>> print(_)
|
||||||
-1 day, 19:00:00
|
-1 day, 19:00:00
|
||||||
|
|
||||||
|
(6)
|
||||||
|
The expression ``t2 - t3`` will always be equal to the expression ``t2 + (-t3)`` except
|
||||||
|
when t3 is equal to ``timedelta.max``; in that case the former will produce a result
|
||||||
|
while the latter will overflow.
|
||||||
|
|
||||||
In addition to the operations listed above :class:`timedelta` objects support
|
In addition to the operations listed above :class:`timedelta` objects support
|
||||||
certain additions and subtractions with :class:`date` and :class:`.datetime`
|
certain additions and subtractions with :class:`date` and :class:`.datetime`
|
||||||
objects (see below).
|
objects (see below).
|
||||||
|
@ -513,8 +518,6 @@ Notes:
|
||||||
:const:`MINYEAR` or larger than :const:`MAXYEAR`.
|
:const:`MINYEAR` or larger than :const:`MAXYEAR`.
|
||||||
|
|
||||||
(2)
|
(2)
|
||||||
This isn't quite equivalent to date1 + (-timedelta), because -timedelta in
|
|
||||||
isolation can overflow in cases where date1 - timedelta does not.
|
|
||||||
``timedelta.seconds`` and ``timedelta.microseconds`` are ignored.
|
``timedelta.seconds`` and ``timedelta.microseconds`` are ignored.
|
||||||
|
|
||||||
(3)
|
(3)
|
||||||
|
@ -961,8 +964,6 @@ Supported operations:
|
||||||
Computes the datetime2 such that datetime2 + timedelta == datetime1. As for
|
Computes the datetime2 such that datetime2 + timedelta == datetime1. As for
|
||||||
addition, the result has the same :attr:`~.datetime.tzinfo` attribute as the input
|
addition, the result has the same :attr:`~.datetime.tzinfo` attribute as the input
|
||||||
datetime, and no time zone adjustments are done even if the input is aware.
|
datetime, and no time zone adjustments are done even if the input is aware.
|
||||||
This isn't quite equivalent to datetime1 + (-timedelta), because -timedelta
|
|
||||||
in isolation can overflow in cases where datetime1 - timedelta does not.
|
|
||||||
|
|
||||||
(3)
|
(3)
|
||||||
Subtraction of a :class:`.datetime` from a :class:`.datetime` is defined only if
|
Subtraction of a :class:`.datetime` from a :class:`.datetime` is defined only if
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue