← Все вопросы

Как посчитать, сколько времени прошло между двумя датами?

Задан 17 месяцев назад841 просмотров3 ответа
13

Есть дата рождения и сегодняшняя дата. Хочу узнать, сколько прошло дней. И ещё — как прибавить к дате 7 дней?

3 ответа

18
✓ Принятый ответ — помог автору

Вычитание двух дат даёт объект timedelta, у него есть .days:

from datetime import date, timedelta

born = date(2005, 3, 10)
today = date.today()
diff = today - born
print(diff.days)            # сколько дней всего

plus_week = today + timedelta(days=7)   # прибавить неделю

Для разницы в секундах у timedelta от двух datetime бери .total_seconds().

6

Просто вычти одну дату из другой и возьми .days.

-4

разница в годах = diff.days / 365

Владислав Рыженков так возраст неточно считается из-за високосных, лучше через relativedelta из dateutil или сравнивать month/day вручную · 17 месяцев назад

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект