В этой статье мы подробно рассмотрим модуль времени. Мы научимся использовать различные функции, связанные со временем, определенные в модуле времени, с помощью примеров.
В 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)