Модуль datetime/time

Обновлено: 2024-03-12
2 мин

Содержание

datetime

Модуль datetime в Python предоставляет классы для работы с датами и временем. Он позволяет создавать объекты даты, времени и даты-времени, а также выполнять операции с этими объектами.

Класс datetime является основным классом модуля datetime и представляет дату и время в формате “ГГГГ-ММ-ДД ЧЧ:ММ:СС”. Класс date представляет только дату, а класс time - только время.

Форматирование дат и времени может выполняться с помощью метода strftime, который позволяет создавать строку с заданным форматом даты и времени. Также существует метод strptime, который позволяет преобразовать строку в объект даты и времени.

Для работы со временем и датами можно использовать методы класса datetime, такие как now для получения текущей даты и времени, date и time для получения объектов даты и времени соответственно, а также методы year, month, day, hour, minute, second для получения соответствующих значений.

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

import datetime

# Создание объекта datetime
now = datetime.datetime.now()
print(now)

# Получение объекта date
today = datetime.date.today()
print(today)

# Получение объекта time
current_time = datetime.time(hour=12, minute=30, second=0)
print(current_time)

# Форматирование даты и времени
formatted_date = now.strftime("%d-%m-%Y")
print(formatted_date)

# Преобразование строки в объект datetime
date_string = "2022-02-15 18:00:00"
date_object = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print(date_object)

# Использование timedelta
one_day = datetime.timedelta(days=1)
yesterday = today - one_day
print(yesterday)

# Перевод даты в строку и обратно
date_string = today.strftime("%Y-%m-%d")
date_object = datetime.datetime.strptime(date_string, "%Y-%m-%d")
print(date_object)

time

Модуль time в Python предоставляет доступ к системному времени и позволяет работать с временными значениями, такими как время в секундах, часах, минутах и т.д. Этот модуль также содержит функции для задержки выполнения программы, вычисления прошедшего времени и других операций, связанных со временем.

Вот некоторые из наиболее распространенных функций time:

  • time(): возвращает текущее время в секундах, начиная с начала эпохи Unix (1 января 1970 года 00:00:00 GMT).
  • ctime(): принимает время в секундах в качестве аргумента и возвращает строку с форматированным временем в удобочитаемом формате.
  • sleep(): приостанавливает выполнение программы на заданное количество секунд.
  • gmtime(): принимает время в секундах в качестве аргумента и возвращает объект структурированного времени, представленного в UTC (координированное всемирное время).
  • localtime(): принимает время в секундах в качестве аргумента и возвращает объект структурированного времени, представленного в локальной временной зоне.
  • strftime(): преобразует объект структурированного времени в строку с заданным форматом.
import time

# Получение текущего времени в секундах
current_time = time.time()
print(current_time)

# Отображение времени в удобочитаемом формате
formatted_time = time.ctime(current_time)
print(formatted_time)

# Приостановка выполнения программы на 5 секунд
time.sleep(5)

# Получение объекта структурированного времени
gm_time = time.gmtime(current_time)
print(gm_time)

# Преобразование объекта структурированного времени в строку
formatted_gm_time = time.strftime('%Y-%m-%d %H:%M:%S', gm_time)
print(formatted_gm_time)