Модуль time | Python 3 для начинающих и чайников

Time — модуль для работы со временем в Python.

time.altzone — смещение DST часового пояса в секундах к западу от нулевого меридиана. Если часовой пояс находится восточнее, смещение отрицательно.

time.asctime([t]) — преобразовывает кортеж или struct_time в строку вида «Thu Sep 27 16:42:37 2012». Если аргумент не указан, используется текущее время.

time.clock() — в Unix, возвращает текущее время. В Windows, возвращает время, прошедшее с момента первого вызова данной функции.

time.ctime([сек]) — преобразует время, выраженное в секундах с начала эпохи в строку вида «Thu Sep 27 16:42:37 2012».

time.daylight — не 0, если определено, зимнее время или летнее (DST).

time.gmtime([сек]) — преобразует время, выраженное в секундах с начала эпохи в struct_time, где DST флаг всегда равен нулю.

time.localtime([сек]) — как gmtime, но с DST флагом.

time. mktime(t) — преобразует кортеж или struct_time в число секунд с начала эпохи. Обратна функции time.localtime.

time.sleep(сек) — приостановить выполнение программы на заданное количество секунд.

time.strftime(формат, [t]) — преобразует кортеж или struct_time в строку по формату:

ФорматЗначение
%aСокращенное название дня недели
%AПолное название дня недели
%bСокращенное название месяца
%BПолное название месяца
%cДата и время
%dДень месяца [01,31]
%HЧас (24-часовой формат) [00,23]
%IЧас (12-часовой формат) [01,12]
%jДень года [001,366]
%mНомер месяца [01,12]
%MЧисло минут [00,59]
%pДо полудня или после (при 12-часовом формате)
%SЧисло секунд [00,61]
%UНомер недели в году (нулевая неделя начинается с воскресенья) [00,53]
%wНомер дня недели [0(Sunday),6]
%WНомер недели в году (нулевая неделя начинается с понедельника) [00,53]
%xДата
%XВремя
%yГод без века [00,99]
%YГод с веком
%ZВременная зона
%%Знак ‘%’

time. strptime(строка [, формат]) — разбор строки, представляющей время в соответствии с форматом. Возвращаемое значение struct_time. Формат по умолчанию: «%a %b %d %H:%M:%S %Y».

Класс time.struct_time — тип последовательности значения времени. Имеет интерфейс кортежа. Можно обращаться по индексу или по имени.

  1. tm_year
  2. tm_mon
  3. tm_mday
  4. tm_hour
  5. tm_min
  6. tm_sec
  7. tm_wday
  8. tm_yday
  9. tm_isdst

time.time() — время, выраженное в секундах с начала эпохи.

time.timezone — смещение местного часового пояса в секундах к западу от нулевого меридиана. Если часовой пояс находится восточнее, смещение отрицательно.

time.tzname — кортеж из двух строк: первая — имя DST часового пояса, второй — имя местного часового пояса.

Для вставки кода на Python в комментарий заключайте его в теги <pre><code>Ваш код</code></pre>

Модуль time в Python, реальное время ОС.

Модуль time предоставляет доступ к нескольким различным типам часов, каждый из которых используется для разных целей:

  • Стандартные системные вызовы типа time.time() сообщают системное время в секундах с начала «эпохи».
  • Монотонные часы time.monotonic() можно использовать для измерения прошедшего времени в каком то длительном процессе, т.к. функция не зависит от настроек системного времени и гарантирует, что никогда не передвинется назад, даже если системное время изменилось.
  • Для тестирования производительности модуль предоставляет доступ к часам с максимально высоким разрешением time.perf_counter(), чтобы сделать измерения короткого времени более точными.
  • Функция time.process_time() возвращает объединенное время процессора и системное время.

Хотя этот модуль всегда доступен, на некоторых платформах доступны не все функции. Большинство функций, определенных в этом модуле, вызывают библиотечные функции языка C с тем же именем. Семантика этих функций варьируется в зависимости от платформы, по этому будет полезно ознакомиться с документацией вашей платформы.

Объяснение некоторых терминов и соглашений:

Используйте следующие функции для преобразования между представлениями времени:

Из форматаВ форматФункция
Секунды эпохиtime.struct_time в UTCtime.gmtime()
Секунды эпохиtime.struct_time в местном времениtime.localtime()
time.struct_time в UTCСекунды эпохиcalendar.timegm()
time.struct_time в местном времениСекунды эпохиtime.mktime()
Примеры использования:
>>> import time
>>> sec_utc = time. time()
>>> sec_utc
# 1587728179.4579966
# переводим из секунд в 'struct_time'
>>> time_utc = time.gmtime(sec_utc)
>>> time_utc
# time.struct_time(tm_year=2020, tm_mon=4, 
# tm_mday=24, tm_hour=11, tm_min=36, tm_sec=19, 
# tm_wday=4, tm_yday=115, tm_isdst=0)
# Локальное время получаем сразу в 'struct_time'
>>> time_local = time.localtime()
# time.struct_time(tm_year=2020, tm_mon=4, 
# tm_mday=24, tm_hour=14, tm_min=36, tm_sec=40,
# tm_wday=4, tm_yday=115, tm_isdst=0)
# получаем форматированную строку из 'struct_time'
>>> time.strftime('%d.%m.%Y г. %H часов %M мин. %S сек.', time_utc)
# '24.04.2020 г. 11 часов 36 мин. 19 сек.'
>>> time.strftime('%d.%m.%Y г. %H часов %M мин. %S сек.', time_local)
# '24.04.2020 г. 14 часов 36 мин. 40 сек.'
# теперь получим из строки со временем - структуру 'struct_time'
>>> struct_time = time.strptime('10/10/2020 10:15', '%d/%m/%Y %H:%M')
# time.struct_time(tm_year=2020, tm_mon=10, 
# tm_mday=10, tm_hour=10, tm_min=15, tm_sec=0, 
# tm_wday=5, tm_yday=284, tm_isdst=-1)
# переведем 'struct_time' в секунды "эпохи"
>>> time.
mktime(struct_time) # 1602314100.0

Для получения дополнительной информации смотрите также модули datetime и calendar.

Функция Python sleep() (с примерами)

В этом руководстве мы узнаем о функции sleep() с помощью примеров.

В Python есть модуль time, который предоставляет несколько полезных методов для обработки задач, связанных со временем. Одним из самых популярных среди них является sleep() .

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


Пример 1. Метод Python sleep()

 время импорта
print("Печатается немедленно.")
время сна (2.4)
print("Напечатано через 2,4 секунды") 

Вывод

  Немедленно печатается.
Напечатано через 2,4 секунды. 

Вот как работает эта программа:

  • "Печать сразу" печатается
  • time.sleep(2.4) приостанавливает выполнение на 2,4 секунды.
  • "Напечатано через 2,4 секунды" печатается.

До Python 3.5 фактическое время приостановки может быть меньше, чем аргумент, указанный в функции time() .

Начиная с Python 3.5 , время приостановки будет составлять не менее указанных секунд.


Создание цифровых часов в Python

 время импорта
пока верно:
    местное время = время.местное время()
    результат = time.strftime("%I:%M:%S %p", местное время)
    печать (результат)
    time.sleep(1) 

Выход

  14:10:50
14:10:51
14:10:52
14:10:53
14:10:54
... ... ...  

В приведенном выше примере мы вычислили и распечатали текущее местное время внутри бесконечного цикла while.

Затем программа ждет 1 секунд. Опять же, текущее местное время вычисляется и печатается. Этот процесс продолжается.

Чтобы узнать больше, посетите цифровые часы в оболочке Python.


Многопоточность в Python

Прежде чем говорить о методе sleep() в многопоточных программах, давайте поговорим о процессах и потоках.

Компьютерная программа представляет собой набор инструкций. Процесс — это выполнение этих инструкций.

Поток — это подмножество процесса. Процесс может иметь один или несколько потоков.


Пример 3. Многопоточность Python

Все программы, приведенные выше в этой статье, являются однопоточными программами. Вот пример многопоточной программы Python.

 импортная резьба
  
защита print_hello_three_times():
  для я в диапазоне (3):
    распечатать("Привет")
  
защита print_hi_three_times():
    для я в диапазоне (3):
      распечатать("Привет")
t1 = threading.Thread(target=print_hello_three_times)
t2 = threading.Thread(target=print_hi_three_times)
t1.старт()
t2.start() 

Выход

  Привет
Привет
Привет
Привет
Привет
Hi  

В приведенном выше примере есть два потока t1 и t2 .

Эти потоки запускаются с использованием операторов t1.start() и t2.start() .

Обратите внимание, что t1 и t2 выполняются одновременно, и мы можем получить разные результаты.

Чтобы узнать больше о многопоточности, посетите Многопоточность в Python.


Python time.sleep() в многопоточных программах

В случае однопоточных программ sleep() приостанавливает выполнение потока и процесса.

Однако этот метод приостанавливает поток, а не весь процесс в многопоточных программах.


Пример 4: sleep() в многопоточной программе

 import threading
время импорта
  
защита print_hello():
  для я в диапазоне (4):
    время сна (0,5)
    распечатать("Привет")
  
защита print_hi():
    для я в диапазоне (4):
      время сна (0,7)
      распечатать("Привет")
t1 = threading.Thread (цель = print_hello)
t2 = threading.Thread(target=print_hi)
t1.старт()
t2.start() 

Выход

  Привет
Привет
Привет
Привет
Привет
Привет
Привет
Привет  

Вышеупомянутая программа имеет два потока. Мы использовали time.sleep(0,5) и time.sleep(0,75) , чтобы приостановить выполнение этих двух потоков на 0,5 секунд и 0,7 секунд соответственно.

Рекомендуемая литература: Python time.sleep() усыпляет поток

Модуль времени Python — GeeksforGeeks

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

Как следует из названия, модуль времени Python позволяет работать со временем в Python. Он позволяет выполнять такие функции, как получение текущего времени, приостановка выполнения программы и т. д. Поэтому, прежде чем начать работу с этим модулем, нам необходимо его импортировать.

Импорт модуля времени

Модуль времени поставляется со стандартным служебным модулем Python, поэтому нет необходимости устанавливать его извне. Мы можем просто импортировать его, используя оператор импорта.

 время импорта 

Что такое эпоха?

Эпоха — это точка начала отсчета времени, зависящая от платформы. В Windows и большинстве систем Unix эпоха — 1 января 1970 года, 00:00:00 (UTC), а дополнительные секунды не учитываются во времени в секундах с начала эпохи. Чтобы проверить, какая эпоха на данной платформе, мы можем использовать time.gmtime(0).

Пример: Получение эпохи

Python3

0006 (Time.gmtime ( 0 ))

Выход:

Время. 0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)

Из приведенного выше примера видно, что эпоха приходится на 1 января 1970 года. Это означает, что 2 января 1970 года можно выразить как 86400 секунд с начала эпохи так как в сутках 86400 секунд.

Примечание: Время до начала эпохи по-прежнему можно представить в секундах, но оно будет отрицательным. Например, 31 декабря 1969 будет представлено как -86400 секунд.

Получение текущего времени в секундах с начала эпохи

Методы time.time() возвращают текущее время в секундах с начала эпохи. Он возвращает число с плавающей запятой.

Example: Current time in seconds since epoch

Python3

import time

 

 

curr = time.time()

Печать ( "Текущее время за секунды с момента EPOCH =" , Curr)

Выход

 Время в секундах 

700100.700100.700100 0 0 0 0 0 0 0 0.

... 9.. 9... 9.700100. .700100 .70016.70016.76009.70016.700100 . .700100
 
. 9.700100
. Функция time.ctime() возвращает строку времени из 24 символов, но принимает секунды в качестве аргумента и вычисляет время до указанных секунд. Если аргумент не передан, время рассчитывается до настоящего времени. 

Example: Getting time string from seconds

Python3

3.717886 )

print ( "Текущее время:" , текущий)

import time

 

curr = time.ctime( 1627

Выход

 Текущее время: Пн Авг 51 3:21 4 2 12 120016 

Задержка выполнения программ

Выполнение может быть отложено с помощью метода time. sleep(). Этот метод используется для остановки выполнения программы на время, указанное в аргументах.

Пример: Задержка выполнения программ на Python.

Python3

Импорт Время

для I в .0006 ):

ВРЕМЕНИ.

 0
1
2
3 

time.struct_time Class

Класс Struct_time помогает получить доступ к локальному времени, т. е. к неэпохальным временным меткам. Он возвращает именованный кортеж, к значению которого можно получить доступ как по индексу, так и по имени атрибута. Его объект содержит следующие атрибуты –

Index  Attribute Name  Values ​​
0 tm_year 0000, …, 9999
1 tm_mon 1, 2, …, 11, 12
2 tm_mday 1, 2, …, 30, 31
3 tm_hour 0, 1, …, 22, 23
4 tm_min 0, 1 , …, 58, 59
5 tm_sec 0, 1, …, 60, 61
6 tm_wday 0, 1, 6; Sunday is 6
7 tm_yday 1, 2, …, 365, 366
8 tm_isdst 0, 1 or -1

This class contains various functions. Давайте обсудим каждую функцию подробно.

метод time.localtime()

метод localtime() возвращает объект struct_time по местному времени. В качестве аргумента принимает количество секунд, прошедших с эпохи. Если параметр секунд не задан, используется текущее время, возвращаемое методом time.time().

Example: Getting local time from epoch

Python3

import time

 

obj = time.localtime( 1627987508.6496193 )

Печать (OBJ)

Выход

Time.struct_time (TM_YEAR = 2021, TM_MON = 8, TM_MDARE = ​​3, TM_HOUR = 16, TM_MIN = TM_HOUR = TM_HOUR = TM_HOUR = TM_HOUR = TM_HOUR tm_wday=1, tm_yday=215, tm_isdst=0)

метод time.

mktime()

time.mktime() является обратной функцией time.localtime(), которая преобразует время, выраженное в секундах, начиная с эпохи, в объект time.struct_time по местному времени.

Example: Converting the struct_time object to seconds since epoch

Python3

import time

 

obj1 = time.gmtime( 1627987508.6496193 )

Time_sec = Время.

Вывод

 Местное время (в секундах): 1627987508.0 

Метод time.gmtime() объект в формате UTC, в котором атрибут tm_isdst всегда равен 0. Если параметр секунд не задан, используется текущее время, возвращаемое методом time.

time().

Пример: ИСПОЛЬЗОВАНИЕ ВРЕМЕНИ.

Печать (OBJ)

Выход

Время. =8, tm_wday=1, tm_yday=215, tm_isdst=0)

Метод time.strftime()

Функция time.strftime() преобразует кортеж или struct_time, представляющий время, возвращаемое функциями gmtime() или localtime(), в строку, указанную аргументом формата. Если t не указан, используется текущее время, возвращаемое функцией localtime(). Формат должен быть строкой. ValueError возникает, если какое-либо поле в t находится за пределами допустимого диапазона.

Пример: Преобразование объекта struct_time в строку с использованием метода strftime()

Python3

Из Время Импорт GMTIME, Strftime

с =

. %M:%S" ,

              gmtime( 1627987508.6496193 ))

print (s)

Output

 Вт, 03 августа 2021 г. 10:45:08 

метод time.asctime()

метод time.asctime() используется для преобразования кортежа или объекта time.struct_time, представляющего время, возвращаемое функцией time.gmtime() или time.localtime() в строку следующего вида:

 Day Mon Date Hour:Min:Sec Year 

Пример: Преобразование кортежа в объект time.struct_time в строку

Python3

импорт время

OBJ = Время.

OBJ = Время. Время ( 1627987508.6496193 )

Time_str )0006 = Время. Вт, 3 августа, 10:45:08 2021

метод time.strptime()

метод time.strptime() преобразует строку, представляющую время, в объект struct_time.

Пример: Преобразование строки в объект struct_time.

Python3

Импорт Время

Строка = "Вт, 03 августа 2021 10:45:08"

obj 9000 = . A, %D %B %y %h: %m: %s " )

Печать (obj)

Выход

времени.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *