Модуль времени Python (с примерами)

В этой статье мы подробно рассмотрим модуль времени. Мы научимся использовать различные функции, связанные со временем, определенные в модуле времени, с помощью примеров.

В Python есть модуль с именем timeдля обработки задач, связанных со временем. Чтобы использовать функции, определенные в модуле, нам нужно сначала импортировать модуль. Вот как:

 import time

Вот часто используемые функции, связанные со временем.

Python time.time ()

В time()функции возвращает количество секунд прошло с тех пор эпохи.

Для системы Unix, January 1, 1970, 00:00:00в формате UTC является эпоха (точка , в которой начинается время).

 import time seconds = time.time() print("Seconds since epoch =", seconds) 

Python time.ctime ()

time.ctime()Функция принимает секунды , прошедшие с началом эпохи в качестве аргумента и возвращает строку , представляющую локальное время.

 import time # seconds passed since epoch seconds = 1545925769.9618232 local_time = time.ctime(seconds) print("Local time:", local_time) 

Если вы запустите программу, результат будет примерно таким:

 Местное время: Thu Dec 27 15:49:29 2018

Python time.sleep ()

sleep()Функция приостанавливает (задержки) выполнение текущего потока для заданного количества секунд.

 import time print("This is printed immediately.") time.sleep(2.4) print("This is printed after 2.4 seconds.") 

Чтобы узнать больше, посетите: Python sleep ().

Прежде чем говорить о других функциях, связанных со временем, давайте time.struct_timeкратко рассмотрим класс.

time.struct_time Класс

Некоторые функции в timeмодуле, такие как gmtime()и asctime()т. Д., Либо принимают time.struct_timeобъект в качестве аргумента, либо возвращают его.

Вот пример time.struct_timeобъекта.

 time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 27, tm_hour = 6, tm_min = 35, tm_sec = 17, tm_wday = 3, tm_yday = 361, tm_isdst = 0) 
Показатель Атрибут Ценности
0 tm_year 0000,…., 2018,…, 9999
1 tm_mon 1, 2,…, 12
2 tm_mday 1, 2,…, 31
3 tm_hour 0, 1,…, 23
4 tm_min 0, 1,…, 59
5 tm_sec 0, 1,…, 61
6 tm_wday 0, 1,…, 6; Понедельник 0
7 tm_yday 1, 2,…, 366
8 tm_isdst 0, 1 или -1

Значения (элементы) time.struct_timeобъекта доступны как по индексам, так и по атрибутам.

Python time.localtime ()

localtime()Функция принимает количество секунд , прошедших с эпохи в качестве аргумента , и возвращается struct_timeв по местному времени .

 import time result = time.localtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

Когда вы запустите программу, результат будет примерно таким:

 результат: time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 27, tm_hour = 15, tm_min = 49, tm_sec = 29, tm_wday = 3, tm_yday = 361, tm_isdst = 0) год: 2018 tm_hour: 15 

Если аргумент Noneне передается или localtime(), используется значение, возвращаемое time().

Python time.gmtime ()

gmtime()Функция принимает количество секунд , прошедших с эпохи в качестве аргумента , и возвращается struct_timeв UTC .

 import time result = time.gmtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

Когда вы запустите программу, вывод будет:

 result = time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 28, tm_hour = 8, tm_min = 44, tm_sec = 4, tm_wday = 4, tm_yday = 362, tm_isdst = 0) год = 2018 tm_hour = 8 

Если аргумент Noneне передается или gmtime(), используется значение, возвращаемое time().

Python time.mktime ()

mktime()Функция принимает struct_time(или кортеж , содержащие 9 элементов , соответствующих struct_time) в качестве аргумента и возвращает секунды , прошедшее с эпохи по местному времени. По сути, это функция, обратная localtime().

 import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) local_time = time.mktime(t) print("Local time:", local_time) 

В приведенном ниже примере показано , как mktime()и localtime()связаны между собой .

 import time seconds = 1545925769 # returns struct_time t = time.localtime(seconds) print("t1: ", t) # returns seconds from struct_time s = time.mktime(t) print("s:", seconds) 

When you run the program, the output will be something like:

 t1: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=15, tm_min=49, tm_sec=29, tm_wday=3, tm_yday=361, tm_isdst=0) s: 1545925769.0 

Python time.asctime()

The asctime() function takes struct_time (or a tuple containing 9 elements corresponding to struct_time) as an argument and returns a string representing it. Here's an example:

 import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) result = time.asctime(t) print("Result:", result) 

When you run the program, the output will be:

 Result: Fri Dec 28 08:44:04 2018

Python time.strftime()

The strftime() function takes struct_time (or tuple corresponding to it) as an argument and returns a string representing it based on the format code used. For example,

 import time named_tuple = time.localtime() # get struct_time time_string = time.strftime("%m/%d/%Y, %H:%M:%S", named_tuple) print(time_string) 

When you run the program, the output will be something like:

 12/28/2018, 09:47:41 

Here, %Y, %m, %d, %H etc. are format codes.

  • %Y - year (0001,… , 2018, 2019,… , 9999)
  • %m - месяц (01, 02,…, 11, 12)
  • %d - день (01, 02,…, 30, 31)
  • %H - час (00, 01,…, 22, 23
  • %M - минуты (00, 01,…, 58, 59)
  • %S - второй (00, 01,…, 58, 61)

Чтобы узнать больше, посетите: time.strftime ().

Python time.strptime ()

strptime()Функция анализирует строку , представляющую время и возвращается struct_time.

 import time time_string = "21 June, 2018" result = time.strptime(time_string, "%d %B, %Y") print(result) 

Когда вы запустите программу, вывод будет:

 time.struct_time (tm_year = 2018, tm_mon = 6, tm_mday = 21, tm_hour = 0, tm_min = 0, tm_sec = 0, tm_wday = 3, tm_yday = 172, tm_isdst = -1) 

Интересные статьи...