+--------------------------------+-----------------------------------------------+
| ``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, |
>>> 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).
: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)
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