Функции gmtime() и localtime()
Некоторые функции, доступные в модуле time
, требуют знания класса struct_time, но прежде чем мы познакомимся с ними, давайте посмотрим, как этот класс выглядит:
time.struct_time:
tm_year # Specifies the year.
tm_mon # Specifies the month (value from 1 to 12)
tm_mday # Specifies the day of the month (value from 1 to 31)
tm_hour # Specifies the hour (value from 0 to 23)
tm_min # Specifies the minute (value from 0 to 59)
tm_sec # Specifies the second (value from 0 to 61 )
tm_wday # Specifies the weekday (value from 0 to 6)
tm_yday # Specifies the year day (value from 1 to 366)
tm_isdst # Specifies whether daylight saving time applies (1 – yes, 0 – no, -1 – it isn't known)
tm_zone # Specifies the timezone name (value in an abbreviated form)
tm_gmtoff # Specifies the offset east of UTC (value in seconds)
Класс struct_time также разрешает доступ к значениям с помощью индексов. Индекс 0
возвращает значение в tm_year, а 8
возвращает значение в tm_isdst.
Исключениями являются tm_zone и tm_gmoff, к которым нельзя получить доступ с помощью индексов. Давайте посмотрим, как использовать класс struct_time на практике. Запустите код в редакторе.
Результат:
time.struct_time(tm_year=2019, tm_mon=11, tm_mday=4, tm_hour=14, tm_min=53, tm_sec=0, tm_wday=0, tm_yday=308, tm_isdst=0)
time.struct_time(tm_year=2019, tm_mon=11, tm_mday=4, tm_hour=14, tm_min=53, tm_sec=0, tm_wday=0, tm_yday=308, tm_isdst=0)
output
В примере показаны две функции, которые преобразуют прошедшее время из эпохи Unix в объект struct_time. Разница между ними в том, что функция gmtime
возвращает объект struct_time в формате UTC, а функция localtime
возвращает местное время. Для функции gmtime
атрибут tm_isdst всегда равен 0.