Изучение модуля datetime в Python
Модуль datetime в Python предлагает набор классов для работы с датами и временем, включая date, time, datetime, timedelta и tzinfo. Эти классы предоставляют мощный и гибкий способ хранения, обработки и форматирования дат и времени в Python.
Класс date
Класс date представляет дату (год, месяц, день) и предоставляет методы для выполнения различных операций с датами, таких как получение текущей даты, форматирование дат для вывода и выполнение арифметических операций с датами.
Класс time
Класс time представляет время суток и предоставляет методы для выполнения операций, таких как форматирование времени для вывода и выполнение арифметических операций с временем.
Класс datetime
Класс datetime объединяет возможности классов date и time, предоставляя методы для работы с датами и временем в одном объекте.
Класс timedelta
Класс timedelta представляет продолжительность или разницу между двумя датами или временами, позволяя выполнять арифметические операции с датами и временем путем сложения или вычитания объектов timedelta.
Класс tzinfo
Класс tzinfo позволяет хранить информацию о часовых поясах и выполнять преобразования между часовыми поясами.
Форматирование дат и времени для вывода
Метод strftime классов date, time и datetime позволяет форматировать даты и время для вывода. Метод принимает строку формата в качестве аргумента и возвращает строковое представление даты или времени в указанном формате.
Парсинг дат и времени из строк
Метод strptime класса datetime позволяет парсить даты и время из строк. Метод принимает строку формата в качестве аргумента и возвращает объект datetime.
Выполнение арифметических операций с датами
Вы можете выполнять арифметические операции с датами и временем, добавляя или вычитая объекты timedelta. Это упрощает расчет будущих или прошлых дат и времен.
Преобразования часовых поясов
Начиная с Python 3.9, встроенный модуль zoneinfo поддерживает работу с часовыми поясами, что упрощает их преобразование. (Для более старых версий Python обычно используется сторонняя библиотека pytz.)
Ниже приведены несколько примеров, которые помогут вам начать работу с модулем datetime в Python.
Пример 1: Форматирование даты и времени для вывода
Пример Python 1: Форматирование даты и времени для вывода
import datetime
# Get the current date and time
now = datetime.datetime.now()
# Format the date and time for output
output = now.strftime("%Y-%m-%d %H:%M:%S")
print(output)Пример 2: Парсинг даты и времени из строки
Пример Python 2: Парсинг даты и времени из строки
import datetime
# Define a date and time string
date_string = "2022-01-01 12:00:00"
# Parse the date and time string
parsed_datetime = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print(parsed_datetime)Пример 3: Выполнение арифметических операций с датами
Пример Python 3: Выполнение арифметических операций с датами
import datetime
# Get the current date and time
now = datetime.datetime.now()
# Calculate the date and time one week from now
one_week_from_now = now + datetime.timedelta(weeks=1)
print(one_week_from_now)Пример 4: Преобразования часовых поясов
Пример Python 4: Преобразования часовых поясов
import datetime
from zoneinfo import ZoneInfo
# Define a time zone
eastern = ZoneInfo("US/Eastern")
# Get the current date and time in the Eastern time zone
now_eastern = datetime.datetime.now(eastern)
# Convert the date and time to the UTC time zone
now_utc = now_eastern.astimezone(datetime.timezone.utc)
print(now_eastern)
print(now_utc)Пример 5: Форматирование метки времени для вывода
Пример Python 5: Форматирование метки времени для вывода
import datetime
# Get the current timestamp
timestamp = datetime.datetime.now().timestamp()
# Format the timestamp for output
output = datetime.datetime.fromtimestamp(timestamp).strftime("%Y-%m-%d %H:%M:%S")
print(output)Как видите, модуль datetime в Python предоставляет широкий набор мощных и гибких инструментов для работы с датами и временем. Независимо от того, нужно ли вам форматировать даты и время для вывода, парсить их из строк, выполнять арифметические операции с датами или преобразовывать часовые пояса, модуль datetime справится с этой задачей. Благодаря этому руководству вы сможете в полной мере использовать возможности модуля datetime для выполнения широкого спектра задач, связанных с датами и временем, в Python.
Практика
Какие допустимые способы создания объекта даты в Python с использованием модуля 'datetime' приведены в материале w3docs.com?