>>> import datetime
>>> today = datetime.date.today()
>>> date = datetime.date.fromtimestamp(time.time())
>>> today == date
# True
>>> date.replace(month=7, day=26)
>>> today == date
# False
>>> today < date
# True
Форматирование вывода строки даты:
>>> import datetime
>>> today = datetime.date.today()
>>> today.isoformat()
# '2020-05-05'
>>> today.strftime("%d/%m/%y")
# '05/05/20'
>>> today.strftime("%A %d. %B %Y")
# 'Tuesday 05. May 2020'
>>> today.ctime()
# 'Tue May 5 00:00:00 2020'
>>> 'The {1} is {0:%d}, the {2} is {0:%B}.'.format(today, "day", "month")
# 'The day is 05, the month is May.'
Извлечение "компонентов" даты.
>>> import datetime
>>> today = datetime.date.today()
>>> struct = today.timetuple()
>>> for item in struct:
... print(item)
...
# 2020 year
# 5 month
# 5 day
# 0
# 0
# 0
# 1 день недели, (0 = понедельник)
# 126 126-й день в году
# -1
>>> ic = today.isocalendar()
>>> for item in ic:
... print(item)
...
# 2020 год
# 19 номер недели
# 2 день недели, (1 = понедельник)
Объект даты является неизменным.
>>> import datetime, time
>>> today = datetime.date.today()
>>> today
# datetime.date(2020, 5, 6)
# Все операции по изменению производят новый объект
>>> today.replace(year=2022)
# datetime.date(2022, 5, 6)
>>> today
# datetime.date(2020, 5, 6)