Модуль time для работы с датой и временем в Python
Рассмотрим основной функционал модуля time для работы с датой и временем в Python. Рекомендую использовать его, если вы заинтересованы в конвертации между строчным и структурным представлением времени и не осуществляете операций с датами и работы с часовыми поясами.
Функция time позволяет вывести количество секунд, прошедших с начала эпохи (1970 год):
import time time.time()
Она обычно используется для замера времени выполнения блока кода.
С помощью функции strptime можно преобразовать строку в объект даты и времени (struct_time):
s = '2022-10-03 05:44:01' t = time.strptime(s, '%Y-%m-%d %H:%M:%S') t
Функция mktime умеет переводить struct_time в количество секунд, прошедших с начала эпохи в локальном часовом поясе:
sec = time.mktime(t) sec
localtime и gmtime принимают количество секунд, прошедших с начала эпохи, и могут перевести его в struct_time для локального и нулевого пояса (формат UTC):
time.localtime(sec)
time.gmtime(sec)
Таким образом, возможны взаимные преобразования между секундным, строчным и struct_time представлениями времени:
Направление "сек - строка"
s = 123456789 display(s) display(time.localtime(s)) display(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(s)))
Направление "строка - сек"
s = '1973-11-30 00:33:09' display(s) display(time.strptime(s, '%Y-%m-%d %H:%M:%S')) display(time.mktime(time.strptime(s, '%Y-%m-%d %H:%M:%S')))