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

Формат спецификаторов

Выдержки из документации по strftime (обратите внимание, что не все спецификаторы работают на всех платформах; это означает, что некоторые не работают, например, в Windows):

Обычные символы, в строке формата, выводятся без изменений. Спецификаторы начинаются с символа '%', и заканчивается символом спецификатора преобразования, и заменяются следующим образом:


%a Сокращенное название дня недели в зависимости от текущей локали.
%A Полное название дня недели в зависимости от текущей локали.
%b Сокращенное название месяца в зависимости от текущей локали.
%B Полное название месяца, в зависимости от текущей локали.
%c Предпочтительное представление даты и времени в текущей локали.
%C Столетие (год/100) как целое двухзначное число. (SU)
%d День месяца как десятичное число (от 01 до 31).
%D Эквивалент %m/%d/%y. (Только для жителей США. Нужно учитывать, что в других странах формат %d/%m/%y встречается чаще. В связи с двузначностью формата в интернациональном контексте, следует его избегать)
%e Как и %d, день месяца как десятичное число, но ведущий ноль заменен на символ пробела.
%E Модификатор: использование альтернативного формата, см. ниже.
%F Эквивалент %Y-%m-%d (ISO 8601 формат даты).
%G ISO 8601 год со столетием как десятичное число. 4-значный год, соответствующий ISO номеру неделе (см. %V). Имеет тот же формат и значение, что и %y, за исключением того, если ISO номер недели принадлежит к предыдущему или следующему году, то вместо него используется текущий год.
%g Как и %G, но без столетия, т. е. 2-значный формат года (00-99).
%h Эквивалент %b.
%H 24-часовой формат времени как десятичное число (00 - 23).
%I 12-часовой формат времени как десятичное число (01 - 12).
%j День года как десятичное число (001 - 366).
%k 24-часовой формат времени как десятичное число (00 - 23); однозначному числу предшествует пробел. (см. %H.)
%l 24-часовой формат времени как десятичное число (1 - 12); однозначному числу предшествует пробел. (см. %I.)
%m Месяц как десятичное число (01 - 12).
%M Минута как десятичное число (00 - 59).
%n Символ новой строки.
%O Модификатор: использование альтернативного формата, см. ниже.
%p "AM" или "PM", в зависимости от времени, или соответствующего значения для текущей локали. Полдень - 'PM', полночь - 'AM'.
%P Как %p, но в нижнем регистре: 'am' или 'pm' или соотвествующее значение для текущей локали.
%r Время в a.m. или p.m.. В POSIX локали, это эквивалентно '%I:%M:%S %p'.
%R Время в 24-часовом формате (%H:%M). Для вывода вместе с секундами см. T% ниже.
%s Количество секунд с начала эпохи, то есть с 1970-01-01 00:00:00 UTC.
%S Секунда как десятичное число (от 00 до 60).
%t Символ табуляции.
%T Время в 24-часовом формате (%H:%M:%S).
%u День недели как десятичное число, от 1 до 7, где 1 - понедельник. См. также %w.
%U Номер недели текущего года как десятичное число, от 00 до 53, начиная с первого воскресенья как первого дня недели - 01. См. также %V и %W.
%V ISO 8601:1988 номер недели текущего года как десятичное число от 01 до 53, где первая неделя содержит не менее 4 дней текущего года, а также понедельника как первого дня недели. См. также %U и %W.
%w День недели как десятичное число, диапазон от 0 до 6, 0 соответствует воскресенью. См. также %u.
%W Номер недели текущего года как десятичное число, от 00 до 53, начиная с первого понедельника как первый день недели 01.
%x Предпочтительное отображение даты для текущей локали (без времени).
%X Предпочтительное отображение времени для текущей локали (без даты).
%y Год, как десятичное число, но не включая столетие (00 - 99).
%Y Год, как десятичное число, включая столетие.
%z Часовой пояс как смещение от GMT.
%Z Часовой пояс или сокращение.
%% Символ %.