Как можно перевести объект `datetime` в формат строки с конкретным шаблоном?

Для перевода объекта datetime в строку с определенным форматом используется метод strftime(). Этот метод принимает строку формата в качестве аргумента. Например:

    from datetime import datetime

    now = datetime.now()
    formatted_string = now.strftime("%Y-%m-%d %H:%M:%S")
    print(formatted_string)
  
Здесь "%Y-%m-%d %H:%M:%S" - строка формата. Документацию по кодам форматирования можно найти в документации Python.

Для перевода объекта datetime в строку с определенным шаблоном в Python используется метод strftime(). Этот метод принимает один аргумент: строку, представляющую желаемый формат.

Синтаксис:

datetime_object.strftime(format_string)

Пример:


import datetime

now = datetime.datetime.now()

# Форматируем дату и время в строку "год-месяц-день час:минута:секунда"
formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_date) # Output: например, 2023-10-27 10:30:00

# Форматируем дату в строку "день/месяц/год"
formatted_date = now.strftime("%d/%m/%Y")
print(formatted_date) # Output: например, 27/10/2023

# Форматируем время в строку "час:минута AM/PM"
formatted_time = now.strftime("%I:%M %p")
print(formatted_time) # Output: например, 10:30 AM (или PM)

Наиболее распространенные директивы формата:

  • %Y: Год с веком (например, 2023)
  • %y: Год без века (00-99)
  • %m: Месяц как число (01-12)
  • %B: Полное название месяца (например, October)
  • %b или %h: Сокращенное название месяца (например, Oct)
  • %d: День месяца как число (01-31)
  • %A: Полное название дня недели (например, Friday)
  • %a: Сокращенное название дня недели (например, Fri)
  • %H: Час (00-23)
  • %I: Час (01-12)
  • %M: Минута (00-59)
  • %S: Секунда (00-59)
  • %f: Микросекунда (000000-999999)
  • %p: AM или PM
  • %j: День года (001-366)
  • %U: Номер недели в году (воскресенье - первый день недели) (00-53)
  • %W: Номер недели в году (понедельник - первый день недели) (00-53)
  • %w: День недели как число (0-6, воскресенье - 0)
  • %x: Локализованное представление даты
  • %X: Локализованное представление времени
  • %c: Локализованное представление даты и времени
  • %%: Литеральный символ '%'

Строка формата может содержать любые другие символы, которые будут включены в результирующую строку как есть.

Важно отметить, что форматирование даты и времени может зависеть от локали. Если требуется определенная локаль, её можно установить перед форматированием (хотя это обычно не требуется в простых случаях).

0