Стандартные функции Python для вывода дат и времени

Раздел: Стандартная библиотека Python -> работа с датой и временем

Вывод даты в Python с помощью стандартной библиотеки

Наиболее эффективный способ получить текущую дату в Python - использовать модуль datetime. Вызов datetime.date.today() возвращает объект date, который можно сразу вывести на экран. Этот метод не требует дополнительных аргументов и работает быстро.

from datetime import date

today = date.today()
print(today)

Python datetime date (модуль datetime)

2025-03-15

Python вывести время (вывод текущего времени в python)

Данный подход подходит для большинства задач, где нужна только дата без времени. Если требуется время, используют datetime.datetime.now().

Как вывести текущую дату и время вместе?

from datetime import datetime

now = datetime.now()
print(now)

Python вывести год (вывод текущего года в python)

2025-03-15 14:30:45.123456

Python вывести дату (вывести дату в python)

Объект datetime содержит год, месяц, день, час, минуту, секунду и микросекунду. Для вывода без микросекунд используют форматирование.

Если забыть импортировать модуль, возникнет ошибка NameError. Также распространена путаница между datetime.date.today() и datetime.datetime.now() - первый возвращает только дату, второй - дату и время.

Как вывести дату в определённом формате?

from datetime import datetime

now = datetime.now()
formatted = now.strftime("%d.%m.%Y %H:%M:%S")
print(formatted)

Python разница времени (вычисление разницы между датами и временем в python)

15.03.2025 14:30:45

Python текущая дата и время (получение текущей даты и времени в python)

Метод strftime позволяет задать любой формат через строку с кодами. Например, %d - день, %m - месяц, %Y - год с четырьмя цифрами.

Неверные коды формата (например, %D вместо %d) приводят к непредсказуемому результату или ошибке. Рекомендуется сверяться с документацией Python.

Как вывести только год или месяц?

from datetime import date

today = date.today()
print(f"Год: {today.year}, Месяц: {today.month}, День: {today.day}")
Год: 2025, Месяц: 3, День: 15

Атрибуты year, month, day дают прямой доступ к числовым значениям. Это удобно для вычислений или условных операций.

Как вывести дату в формате ISO 8601?

from datetime import datetime

now = datetime.now()
iso = now.isoformat()
print(iso)
2025-03-15T14:30:45.123456

Метод isoformat() возвращает строку, соответствующую международному стандарту. Используется в обмене данными и API.

Как вывести дату с помощью модуля time?

import time

timestamp = time.time()
local_time = time.localtime(timestamp)
formatted = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print(formatted)
2025-03-15 14:30:45

Модуль time работает с метками времени и структурами struct_time. Полезно, если уже используются функции из этого модуля.

Метки времени не учитывают исторические часовые пояса, в отличие от datetime с timezone.

Как вывести дату в локальном формате с учётом языка?

import locale
from datetime import datetime

locale.setlocale(locale.LC_TIME, 'ru_RU.UTF-8')
now = datetime.now()
print(now.strftime("%A, %d %B %Y"))
суббота, 15 марта 2025

С помощью модуля locale можно получить названия дней и месяцев на нужном языке. Однако это зависит от установленных локалей в операционной системе.

Если локаль не поддерживается, возникнет ошибка locale.Error. Рекомендуется проверять доступность локали перед её установкой.

Расширенные примеры вывода даты

Вывод даты с прибавлением или вычитанием дней

Пример
from datetime import datetime, timedelta

today = datetime.now()
next_week = today + timedelta(days=7)
print(f"Сегодня: {today}")
print(f"Через неделю: {next_week}")
Сегодня: 2025-03-15 14:30:45.123456
Через неделю: 2025-03-22 14:30:45.123456

Объект timedelta позволяет выполнять арифметические операции с датами. Можно задавать дни, секунды, микросекунды и другие интервалы.

Вывод даты в UTC и локальном времени

Пример
from datetime import datetime, timezone, timedelta as tdelta

utc_now = datetime.now(timezone.utc)
print("UTC:", utc_now)

local_offset = tdelta(hours=3)  # Москва UTC+3
msk = datetime.now(timezone(local_offset))
print("Москва:", msk)
UTC: 2025-03-15 11:30:45.123456+00:00
Москва: 2025-03-15 14:30:45.123456+03:00

С помощью timezone можно работать с фиксированными смещениями. Для полноценной работы с временными зонами рекомендуется использовать модуль zoneinfo (Python 3.9+).

Вывод календаря на текущий месяц

Пример
import calendar
from datetime import datetime

now = datetime.now()
cal = calendar.month(now.year, now.month)
print(cal)
     March 2025
Mo Tu We Th Fr Sa Su
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

Модуль calendar выводит текстовый календарь. Полезно для консольных приложений или отчётов.

Вывод даты с использованием combine

Пример
from datetime import date, time, datetime

d = date(2025, 12, 25)
t = time(10, 30)
combined = datetime.combine(d, t)
print(combined)
2025-12-25 10:30:00

Метод combine объединяет объекты date и time в один datetime. Удобно, когда дата и время получены из разных источников.

Вывод даты после парсинга строки

Пример
from datetime import datetime

date_string = "15.03.2025 14:30:45"
parsed = datetime.strptime(date_string, "%d.%m.%Y %H:%M:%S")
print(parsed)
print(parsed.strftime("%A, %d %B %Y"))
2025-03-15 14:30:45
суббота, 15 марта 2025

Метод strptime преобразует строку в объект datetime по заданному формату. После этого можно выводить дату в любом нужном виде.

вывести дату в Python - comments

En
Python вывести дату (python)