summaryrefslogtreecommitdiffstats
path: root/Doc/library
diff options
context:
space:
mode:
authorFarhaan Bukhsh <farhaan.bukhsh@gmail.com>2018-07-04 18:42:05 (GMT)
committerAlexander Belopolsky <abalkin@users.noreply.github.com>2018-07-04 18:42:05 (GMT)
commit5b6e49a1393b3e2313471696e3568e26296137b4 (patch)
tree2dc4f1ea27e001a1359761b5b5edb016329e1433 /Doc/library
parenta390cb6b6fb6638e91d699513167e8f35b47f846 (diff)
downloadcpython-5b6e49a1393b3e2313471696e3568e26296137b4.zip
cpython-5b6e49a1393b3e2313471696e3568e26296137b4.tar.gz
cpython-5b6e49a1393b3e2313471696e3568e26296137b4.tar.bz2
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>
Diffstat (limited to 'Doc/library')
-rw-r--r--Doc/library/datetime.rst11
1 files changed, 6 insertions, 5 deletions
diff --git a/Doc/library/datetime.rst b/Doc/library/datetime.rst
index 1ac2570..53c181c 100644
--- a/Doc/library/datetime.rst
+++ b/Doc/library/datetime.rst
@@ -241,7 +241,7 @@ Supported operations:
+--------------------------------+-----------------------------------------------+
| ``t1 = t2 - t3`` | Difference of *t2* and *t3*. Afterwards *t1* |
| | == *t2* - *t3* and *t2* == *t1* + *t3* are |
-| | true. (1) |
+| | true. (1)(6) |
+--------------------------------+-----------------------------------------------+
| ``t1 = t2 * i or t1 = i * t2`` | Delta multiplied by an integer. |
| | Afterwards *t1* // i == *t2* is true, |
@@ -317,6 +317,11 @@ Notes:
>>> print(_)
-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
certain additions and subtractions with :class:`date` and :class:`.datetime`
objects (see below).
@@ -513,8 +518,6 @@ Notes:
:const:`MINYEAR` or larger than :const:`MAXYEAR`.
(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.
(3)
@@ -961,8 +964,6 @@ Supported operations:
Computes the datetime2 such that datetime2 + timedelta == datetime1. As for
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.
- This isn't quite equivalent to datetime1 + (-timedelta), because -timedelta
- in isolation can overflow in cases where datetime1 - timedelta does not.
(3)
Subtraction of a :class:`.datetime` from a :class:`.datetime` is defined only if