Опции формата даты и времени
Модификаторы (коды) для описания формата даты и времени.
Ниже перечислены коды/директивы формата как из стандарта 1989 C (работают на всех платформах, реализующих стандарт), так и дополнительные (по ISO 8601).
1. Поскольку формат зависит от текущей локали, он может меняться. Может меняться порядок полей. Вывод может включать символы в кодировке специфичной для текущей локали.
2.
3. При использовании
4. В противоположность модулю
5. При использовании
6. Для наивных объектов значение всегда <пусто>.
7. При использовании
8. При использовании
9. При использовании
Внимание
Коды по ISO 8601 при использовании
strftime()
могут быть недоступны на некоторых платформах. Директивы для года и недели по ISO 8601 не совместимы с аналогичными по 1989 С (ср. %G
и %Y
). На заметку
Питон использует системную функцию
strftime()
, поэтому полный перечень поддерживаемых директив может разниться для разных платформ. На этой странице приведены основные. Полный список можно узнать, ознакомившись с документаций по strftime
(debian).%% | Используется для получения символа % | % | |
Дата и время | |||
%c | Дата и время (по текущей локали) | en_US: Thu 23 Jan 2020 20:40:33 AM +07 ; ru_RU: Чт 23 янв 2020 20:40:33 | 1 |
%x | Дата (по текущей локали) | en_US: 01/23/2020 ; ru_RU: 23.01.2020 | 1 |
%X | Время (по текущей локали) | en_US: 08:40:33 AM ; ru_RU: 20:40:33 | 1 |
День | |||
%d | Номер в месяце (ведущий нуль) | 01, 02, 31 | 9 |
%j | Номер в году (ведущий нуль) | 001, 002, 266 | 9 |
Неделя | |||
%U | Номер в году, две цифры. Первый день недели: воскресенье (предш. дни года приходятся на неделю 0) | 00, 01, 53 | 7, 9 |
%W | Номер в году, две цифры. Первый день недели: понедельник (предш. дни года приходятся на неделю 0) | 00, 01, 53 | 7, 9 |
%V | +py3.6 ISO 8601. Номер в году, две цифры. Первый день недели: понедельник; неделя 01 содержит 4 января | 01, 02, 53 | 8, 9 |
%a | Краткое название дня (по текущей локали) | en_US: Sun, Mon; ru_RU: Вс, Пн | 1 |
%А | Полное название дня (по текущей локали) | en_US: Thursday; ru_RU: Четверг | 1 |
%w | Номер дня, одна цифра (0 — воскресенье, 6 — суббота) | 0, 1, 6 | |
%u | +py3.6 ISO 8601. Номер дня, одна цифра (1 — понедельник) | 1, 2, 7 | |
Месяц | |||
%b | Краткое название (по текущей локали) | en_US: Jan, Feb; ru_RU: Янв, Фев | 1 |
%B | Полное название (по текущей локали) | en_US: January; ru_RU: Январь | 1 |
%m | Номер, две цифры (ведущий нуль) | 01, 02, 12 | 9 |
Год | |||
%y | Номер, две цифры (ведущий нуль) | 01, 02, 99 | 9 |
%Y | Номер, четыре цифры (ведущий нуль) | 0001, 0002, 9999 | 2 |
%G | +py3.6 ISO 8601. Номер, четыре цифры. Век включает бОльшую часть недели (см. %V ) | 0001, 2017, 9999 | 8 |
Время | |||
%H | Номер часа, 24 часа, две цифры (ведущий нуль) | 01, 02, 23 | 9 |
%M | Номер минуты, две цифры (ведущий нуль) | 00, 01, 59 | 9 |
%S | Номер секунды, две цифры (ведущий нуль) | 00, 01, 59 | 4, 9 |
%f | +py2.6 Номер микросекунды, шесть цифр (ведущий нуль) | 000000, 000001, 999999 | 5 |
%z | Смещение от UTC в формате ±HHMM[SS[.ffffff]] | <пусто>, +0000, -0400, +1030, +063415, -030712.345216 | 6 |
%Z | Имя временной зоны | <пусто>, UTC, EST, CST | |
%I | Номер часа, 12 часов, две цифры (ведущий нуль) | 01, 02, 12 | 9 |
%p | Индикатор половины суток AM/PM (по текущей локали) | en_US: AM; ru_RU: '' | 1, 3 |
1. Поскольку формат зависит от текущей локали, он может меняться. Может меняться порядок полей. Вывод может включать символы в кодировке специфичной для текущей локали.
2.
strptime()
может разбирать годы диапазона [1, 9999] (начиная с +py3.3; в +py3.2 — [1000, 9999]; ранее — [1900, 9999]), однако годы < 1000 должны иметь четыре цифры с ведущими нулями.3. При использовании
strptime()
, директива %p
затрагивает вывод поля часа, если для разбора часа использовалась %I
.4. В противоположность модулю
time
, модуль datetime
не поддерживает «скачущие» секунды.5. При использовании
strptime()
, директива %f
поддерживает от одной до шести цифр и дополнение нулями справа. %f
— это расширение набора символов форматирования из стандарта C, реализованное для объектов datetime
, а потому всегда доступное.6. Для наивных объектов значение всегда <пусто>.
7. При использовании
strptime()
, директивы %U
и %W
используются в вычислениях только при указании дня недели и календарного года (%Y
).8. При использовании
strptime()
, директива %V
, подобно %U
и %W
, используется в вычислениях только при указании дня недели и года по ISO (%G
).9. При использовании
strptime()
, для директив %d
, %m
, %H
, %I
, %M
, %S
, %J
, %U
, %W
, %V
ведущие нули необязательны. Для формата %y
наличие ведущего нуля обязательно.
Синонимы поиска: Опции формата даты и времени
На заметку
У нас есть новостная группа в Telegram. Там же можно обсудить интересующие вопросы. Ссылка в самом низу страницы.