datetime
:
from datetime import date
date1 = date(2023, 1, 1)
date2 = date(2023, 1, 10)
delta = date2 - date1
print(delta.days) # Output: 9
Метод .days
возвращает разницу в днях.
Чтобы получить количество дней между двумя датами в Python, можно использовать модуль datetime
. Вот несколько способов:
1. Используя datetime.date
:
import datetime
date1 = datetime.date(2023, 10, 26)
date2 = datetime.date(2023, 11, 10)
delta = date2 - date1
print(delta.days) # Вывод: 15
В этом примере мы создаем два объекта datetime.date
, представляющих две даты. Затем мы вычитаем одну дату из другой, чтобы получить объект datetime.timedelta
. Атрибут days
объекта timedelta
содержит разницу в днях.
2. Используя datetime.datetime
:
import datetime
datetime1 = datetime.datetime(2023, 10, 26, 10, 0, 0)
datetime2 = datetime.datetime(2023, 11, 10, 12, 0, 0)
delta = datetime2 - datetime1
print(delta.days) # Вывод: 15
Этот пример аналогичен первому, но использует объекты datetime.datetime
, которые включают время. Разница в днях рассчитывается таким же образом.
3. Используя строки и datetime.strptime
:
import datetime
date_string1 = "2023-10-26"
date_string2 = "2023-11-10"
date_format = "%Y-%m-%d" # Формат даты: Год-Месяц-День
date1 = datetime.datetime.strptime(date_string1, date_format).date()
date2 = datetime.datetime.strptime(date_string2, date_format).date()
delta = date2 - date1
print(delta.days) # Вывод: 15
Здесь мы преобразуем строки, представляющие даты, в объекты datetime.date
с использованием datetime.datetime.strptime
. Функция strptime
принимает строку и формат, в котором строка представляет дату. После преобразования, разница рассчитывается как и раньше.
Важно:
datetime.timedelta
также имеет атрибуты seconds
и total_seconds()
, если вам нужна более точная разница во времени.