datetime

Модуль для работы с датой и временем

datetime.MAXYEAR

максимальный год

datetime.MINYEAR

минимальный год

date

class datetime.date(<Год>, <Месяц>, <День>)

дата

yaer

возвращает год

month

возвращает месяц

day

возвращает день

static today()

возвращает текущую дату date

static fromordinal(<Количество дней с 1 года>)

возвращает дату date, соответствующую количеству дней, прошедших с 1 года

datetime.date.max.toordinal()
# 3652059

datetime.date.fromordinal(3652059)
# datetime.date(9999, 12, 31)

datetime.date.fromordinal(1)
# datetime.date(1, 1, 1)
static fromtimestamp(<Количество секунд>)

возвращает дату date, соответствующую количеству секунд, прошедших с начала эпохи

datetime.date.fromtimestamp(time.time())
# datetime.date(2014, 8, 24)

datetime.date.fromtimestamp(1233368623.0)
# datetime.date(2009, 1, 31)
ctime()

возвращает строку специального формата

datetime.date().ctime()
# 'Sun Jun 5 00:00:00 2011'
isocalendar()

возвращает кортеж из 3х элементов (год, номер недели и порядковый номер дня в неделе)

isoformat()

возвращает дату в формате ГГГГ-ДД-ММ

isoweekday()

возвращает порядковый номер дня недели (начинается с 1)

replace([year][, month][ , day])

возвращает дату с обновленными значемниями

strftime(<Строка формата>)

возвращает отформатированную строку

timetuple()

возвращает time.struct_time с датой и временем

toordinal()

возвращает количесвто дней, прошедших с 1 года

weekday()

возвращает порядковый номер дня в недели (начинается с 0)

datetime

class datetime.datetime(<Год>, <Месяц>, <День>[ , hour][ , minute][ , second][ , microsecond][ , tzinfo])

дата и время

year

год

month

месяц

day

день

hour

часы

minute

минуты

second

секунды

microsecond

микросекунды

tzinfo

временная зона

classmethod combine(<date>, <time>)

создает экземпляр класса в соответствии со значениями экземпляров класса date и time

classmethod fromordinal(<Количесвто дней с 1 года>)

возвращает дату, соответсвующую количесвту дней, прошедших с 1 года

classmethod fromtimestamp(<Количество секунд>[, <Зона>])

возвращает дату, соотвествующую количесвтоу секунд с начала эпохи

classmethod now([<Зона>])

возвращает текущую дату и время

classmethod strptime(<стркоа с датой>, <Строка формата>)

разбирает строку с датой в соответсвии со строкой формата

classmethod today()

возвращает текущую дату и время

classmethod utcfromtimestamp(<Количество секунд>)

dозвращает дату, соответствующую количесвту секунд, прошедших с начала эпохи в универсальном времени (UTC)

classmethod utcnow()

возвращает текущее универсальное время (UTC)

ctime()

возвращает строку специального формата

date()

возврашает дату в формате date

isocalendar()

возвращает кортеж из трех элементов (год, номер недели в году и порядковый номер дня в неделе)

isoformat([<Разделитель>='T'])

dозвращает дату в формате ISO 8601

isoweekday()

возвращает порядковый номер дня недели (начинается с 1)

replace([year][ , month][ , day][ , hour][, minute][, second][, microsecond][, tzinfo])

возвращает дату с обновленными значениями

strftime(<строка формата>)

возвращает отформатированную строку

time()

возвращает время в формате time

timetuple()

возвращает дату и время в формате struct_time

timetz()

возвращает время в формате time с учетом временной зоны

toordinal()

возвращает количесвто дней с 1 года

utctimetuple()

возвращает дату и время в формате struct_time в универсальном времене

weekday()

возвращает порядковый номер дня в недели (начинается с 0)

timedelta

class datetime.timedelta([days=0][, seconds=0][, microseconds=0][, milliseconds=0][, minutes=0][, hours=0][, weeks=0])

дата в виде количесвта дней, секунд и микросекунд

d1 = datetime.timedelta(days=2)
d2 = datetime.timedelta(days=7)

d1 + d2, d2 - d1
# datetime.timedelta(9), datetime.timedelta(5)

d2 / d1
# 3.5

d1 / 2, d2 / 2.5
# datetime.timedelta(1), datetime.timedelta(2, 69120)

d2 // d1
# 3

d1 // 2, d2 // 2
# datetime.timedelta(1), datetime.timedelta(3, 43200)

d2 % d1
# datetime.timedelta(1)

d1 * 2, d2 * 2
# datetime.timedelta(4), datetime.timedelta(14)

2 * d1, 2 * d2
# datetime.timedelta(4), datetime.timedelta(14)

d3 = -d1
d3, abs(d3)
# (datetime.timedelta(-2), datetime.timedelta(2))
d1 = datetime.timedelta(days=2)
d2 = datetime.timedelta(days=7)
d3 = datetime.timedelta(weeks=1)

d1 == d2, d2 == d3
# (False, True)

d1 != d2, d2 != d3
# (True, False)

d1 < d2, d2 <= d3
# (True, True)

d1 > d2, d2 >= d3
# (False, True)
days

количество дней

microseconds

количесвто микросекунд

seconds

количесвто секунд

total_seconds()

возвращает результат в секундах

Добавлено в версии 3.2.

time

class datetime.time([hour][ , minute][ , second][ , microsecond][ , tzinfo])

время

hour

часы

minute

минуты

second

секунды

microsecond

микросекунды

tzinfo

информаиця о временной зоне

isoformat()

возвращает время в формате ISO 8601

datetime.time(23, 12, 38, 375000).isoformat()
# '23:12:38.375000'
replace([hour][ , minute][ , second][ , microsecond][ , tzinfo])

возвращает время с обновленными значениями

strftime(<Строка формата>)

возвращает отформатированную строку

tzinfo

class datetime.tzinfo

зона времени

Форматирование

Литерал Описание
j число без нуля
d число с нулем
n месяц без нуля
m месяц с нулем
E месяц по локали
F месяц на английском языке
b месяц на английском языке, 3х буквенное обозначение: jan, feb, ...
M месяц на английском языке, 3х буквенное обозначение: Jan, Feb, ...
y год 2х значный
Y год 4х значный
z номер дня в году
w номер дня недели от 0 до 6
l день недели на английском
D день недели на английском, 3х буквенное: Mon, Tue
g часы в 12х часовом формате без начального 0
G часы в 24х часовом формате без начального 0
h часы в 12х часовом формате c начальным 0
H часы в 24х часовом формате c начальным 0
a период времени: a.m., p.m.
A период времени: AM, PM
i минуты
s секунды с начальным нулем
u микросекунды
I 1 - летнее время, 0 - зимнее
L True - год високосный, False - не високосный
t количесвто дней в текущем месяце
T временная зона
r Дата по RFC 2822