Создание объектов timedelta: продолжение
Вы уже знаете, как объект timedelta
сохраняет переданные аргументы внутри. Посмотрим, как это можно применить на практике.
Посмотрите на некоторые операции, поддерживаемые классами модуля datetime
. Запустите код, который мы предоставили в редакторе.
Результат:
16 days, 2:00:00
32 days, 4:00:00
2019-11-05
2019-11-05 18:53:00
output
Объект timedelta
можно умножить на целое число. В нашем примере мы умножаем объект, представляющий 16 дней и 2 часа, на 2. В результате мы получаем объект timedelta
, представляющий 32 дня и 4 часа.
Обратите внимание, что дни и часы были умножены на 2. Еще одна интересная операция с использованием объекта timedelta
- это добавление. В этом примере мы добавили объект timedelta
к объектам date и datetime
.
В результате этих операций мы получаем объекты date и datetime
, увеличенные на дни и часы, хранящиеся в объекте timedelta
.
Представленная операция умножения позволяет быстро увеличить значение объекта timedelta
, а умножение также может помочь Bам получить дату из будущего.
Конечно, классы timedelta
, date
и datetime
поддерживают гораздо больше операций. Мы рекомендуем Bам ознакомиться с ними в документации.
Code
from datetime import timedeltafrom datetime import date
from datetime import datetime
delta = timedelta(weeks=2, days=2, hours=2)
print(delta)
delta2 = delta * 2
print(delta2)
d = date(2019, 10, 4) + delta2
print(d)
dt = datetime(2019, 10, 4, 14, 53) + delta2
print(dt)