Python Glossary English

все Python 3datetimeпонятие

datetime.timedelta

timedelta

Промежуток времени. Поддерживает операции с датами: сложение, вычитание, сравнение. Хранит дни, секунды, микросекунды.

Синтаксис

from datetime import timedelta
timedelta(days=0, seconds=0, ...)

Внутри хранятся только дни, секунды и микросекунды: weeks, hours, minutes пересчитываются при создании, а месяцев и лет нет вовсе — «прибавить месяц» через timedelta не выразить, нужен ручной расчёт или сторонний dateutil. Атрибут .seconds — это остаток внутри суток (0-86399), а не вся длительность; полную величину в секундах даёт total_seconds().

Примеры

from datetime import datetime, timedelta
td = timedelta(days=7)
print(td)  # → 7 days, 0:00:00
next_week = datetime.now() + td
print(next_week.date())
td2 = timedelta(hours=2, minutes=30)
print(td2.total_seconds())  # → 9000.0
d1 = datetime(2024,12,31)
d2 = datetime(2024,1,1)
print((d1-d2).days)  # → 365
print(timedelta(weeks=2))  # → 14 days

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности