Модуль time в python, реальное время ос
Содержание:
- Модуль datetime
- timeit — Methods:
- Что такое TimeTuple?
- Timing Multiple lines in python code
- Таймеры Python как контекстные менеджеры
- Что такое TimeTuple?
- Command-Line Interface¶
- datetime.datetime
- Clock ID Constants¶
- Сравните производительность блоков кода
- Отличия и особенности
- Модуль time
- Получение форматированной строки с датой и временем.
- Вывод
Модуль datetime
Модуль содержит классы:
Также существует класс , который применяется для работы с часовыми поясами.
Класс datetime.date
Класс принимает три аргумента: год, месяц и день.
>>> import datetime >>> date = datetime.date(2017, 4, 2) >>> date.year 2017 >>> date.month 4 >>> date.day 2
Давайте посмотрим, какой сейчас день:
>>> today = datetime.date.today() >>> today.year 2018 >>> today.month 4 >>> today.day 21
Класс datetime.datetime
Класс принимает аргументы: год, месяц, день, час, минута, секунда и микросекунда.
>>> date_time = datetime.datetime(2017, 4, 21, 13, 30, 10) >>> date_time.year 2017 >>> date_time.month 4 >>> date_time.day 21 >>> date_time.hour 13 >>> date_time.minute 30 >>> date_time.second 10
Давайте посмотрим, какое сейчас время:
>>> today = datetime.datetime.today() >>> today datetime.datetime(2018, 4, 21, 12, 43, 27, 786725) >>> today.hour 12 >>> today.minute 43
>>> datetime.datetime.now() # местное время datetime.datetime(2018, 4, 24, 13, 2, 39, 17479) >>> datetime.datetime.utcnow() # время по Гринвичу datetime.datetime(2018, 4, 24, 10, 2, 47, 46330)
Получить из объекта отдельно дату и отдельно время:
>>> today = datetime.datetime.today() >>> today datetime.datetime(2018, 4, 21, 13, 26, 54, 387462) >>> today.date() # отдельно дата datetime.date(2018, 4, 21) >>> today.time() # отдельно время datetime.time(13, 26, 54, 387462)
Классы и содержат метод , который позволяет создавать строку, отображающую время в более понятной для человека форме.
>>> today = datetime.date.today().strftime("%d.%m.%Y") >>> today '21.04.2018'
>>> import locale >>> locale.setlocale(locale.LC_ALL, "ru") # задаем локаль для вывода даты на русском языке 'ru' >>> today = datetime.datetime.today().strftime("%A, %d.%m.%Y") >>> today 'суббота, 21.04.2018'
Сокращенное название дня недели | |
Полное название дня недели | |
Сокращенное название месяца | |
Полное название месяца | |
Дата и время | |
День месяца | |
24-часовой формат часа | |
12-часовой формат часа | |
День года. Цифровой формат | |
Номер месяца. Цифровой формат | |
Минута. Цифровой формат | |
До полудня или после (AM или PM) | |
Секунда. Цифровой формат | |
Номер недели в году. Цифровой формат (с воскресенья) | |
День недели. Цифровой формат | |
Номер недели в году. Цифровой формат (с понедельника) | |
Дата | |
Время | |
Год без века. Цифровой формат | |
Год с веком. Цифровой формат | |
Временная зона | |
Знак процента |
Методы класса :
- — объект из текущей даты и времени; работает также, как и со значением .
- — объект из текущей даты и времени, местное время.
- — объект из текущей даты и времени, по Гринвичу.
- — дата из стандартного представления времени.
- — дата из числа, представляющего собой количество дней, прошедших с 01.01.1970.
- — объект из комбинации объектов и .
- — преобразует строку в (так же, как и функция из модуля ).
- — преобразует объект в строку согласно формату.
- — объект даты (с отсечением времени).
- — объект времени (с отсечением даты).
- — возвращает новый объект с изменёнными атрибутами.
- — возвращает из .
- — количество дней, прошедших с 01.01.1970.
- — возвращает время в секундах с начала эпохи Unix.
- — день недели в виде числа, понедельник — 0, воскресенье — 6.
- — день недели в виде числа, понедельник — 1, воскресенье — 7.
- — кортеж (год в формате ISO, ISO номер недели, ISO день недели).
- — красивая строка вида или, если ,
- — возвращает строковое представление текущего местного времени.
Класс datetime.timedelta
Класс позволяет выполнять операции над датами — складывать, вычитать, сравнивать. Конструктор принимает именованные аргументы , , , , , , :
>>> delta = datetime.timedelta(days = 5, hours = 1, minutes = 1) >>> delta datetime.timedelta(5, 3660)
Интервал времени 5 дней, 1 час и 1 минута. Получить результат можно с помощью атрибутов , и (5 дней и 3660 секунд):
>>> delta.days 5 >>> delta.seconds 3660
Получить результат в секундах позволяет метод :
>>> today = datetime.datetime.today() # текущая дата >>> today datetime.datetime(2018, 4, 21, 15, 19, 2, 515432) >>> future = datetime.datetime(2019, 4, 21, 15, 19, 2, 515432) # дата на один год больше >>> delta = future - today >>> delta datetime.timedelta(365) >>> delta.total_seconds() # 365 дней в секундах 31536000.0
Прибавить к текущей дате 10 дней, 10 часов и 10 минут:
>>> today = datetime.datetime.today() >>> delta = datetime.timedelta(days = 10, hours = 10, minutes = 10) >>> future = today + delta >>> today # 21 апреля 2018 года, 15:29 datetime.datetime(2018, 4, 21, 15, 29, 29, 265954) >>> future # 2 мая 2018 года, 01:39 datetime.datetime(2018, 5, 2, 1, 39, 29, 265954)
timeit — Methods:
Here, are 2 important timeit methods
timeit.default_timer() : This will return the default time when executed.
timeit.repeat(stmt, setup, timer, repeat, number) : same as timeit() , but with repeat the timeit() is called the number of times repeat is given.
Program Example 1:
# testing timeit() import timeit import_module = "import random" testcode = ''' def test(): return random.randint(10, 100) ''' print(timeit.timeit(stmt=testcode, setup=import_module))
Output:
0.46715912400000004
Example 2:
default_timer() Example
# testing timeit() import timeit import random def test(): return random.randint(10, 100) starttime = timeit.default_timer() print("The start time is :",starttime) test() print("The time difference is :", timeit.default_timer() - starttime)
Output:
The start time is : 0.220261875 The time difference is : 0.0004737320000000045
Example 3: timeit.repeat()
# testing timeit() import timeit import_module = "import random" testcode = ''' def test(): return random.randint(10, 100) ''' print(timeit.repeat(stmt=testcode, setup=import_module, repeat=5))
Output:
timeit.repeat() works similar to timeit.timeit() function, with the only difference it takes in the repeat argument and gives back the execution time in array format with values as per the repeat number.
Что такое TimeTuple?
Многие из функций времени Python обрабатывают время как кортеж из 9 чисел, как показано ниже —
Показатель | поле | Ценности |
---|---|---|
4-значный год | 2008 | |
1 | Месяц | От 1 до 12 |
2 | День | От 1 до 31 |
3 | Час | От 0 до 23 |
4 | минут | От 0 до 59 |
5 | второй | От 0 до 61 (60 или 61 — високосные секунды) |
6 | День недели | От 0 до 6 (0 — понедельник) |
7 | День года | С 1 по 366 (юлианский день) |
8 | Дневного сбережения | -1, 0, 1, -1 означает, что библиотека определяет DST |
Вышеуказанный кортеж эквивалентен структуре struct_time . Эта структура имеет следующие атрибуты —
Показатель | Атрибуты | Ценности |
---|---|---|
tm_year | 2008 | |
1 | tm_mon | От 1 до 12 |
2 | tm_mday | От 1 до 31 |
3 | tm_hour | От 0 до 23 |
4 | tm_min | От 0 до 59 |
5 | tm_sec | От 0 до 61 (60 или 61 — високосные секунды) |
6 | tm_wday | От 0 до 6 (0 — понедельник) |
7 | tm_yday | С 1 по 366 (юлианский день) |
8 | tm_isdst | -1, 0, 1, -1 означает, что библиотека определяет DST |
Timing Multiple lines in python code
There are two you can execute multiple lines of code in timeit.timeit(), using a semicolon or by saving the code enclosed as a string with triple quotes.
Here are examples that show the working of it.
Example 1: Using semicolon
import timeit print("The time taken is ",timeit.timeit(stmt='a=10;b=10;sum=a+b'))
Output:
The time taken is 0.137031482
Example 2: Using triple quotes
import timeit import_module = "import random" testcode = ''' def test(): return random.randint(10, 100) ''' print(timeit.repeat(stmt=testcode, setup=import_module))
Output:
C:\pythontest>python testtimeit.py The time taken is 0.182619178
Таймеры Python как контекстные менеджеры
Контекстные менеджеры-это лучший способ избежать ошибок памяти и последующих сбоев. Все должны были знать о “with” заявлении в Python. Это утверждение гарантирует, что нам не нужно заботиться о том, чтобы многие объекты закрывались независимо. Каждый мог бы использовать его с комбинацией функций with и open(). Итак, переходя к главному вопросу, можем ли мы создать контекстные менеджеры для таймеров Python?
<сильный>Да. Благодаря множеству функций перегрузки мы можем легко создать наш собственный таймер python в качестве контекстного менеджера всего за несколько строк. Давайте начнем с примера, где вы должны измерить время выполнения программы. Без переопределения всех переменных один контекстный менеджер может использоваться многократно для многократного измерения времени. Следующая программа демонстрирует это.
Пример –
import time class Timer_Pythonpool(): """ Context manager as a python timer """ def __init__(self): def __enter__(self): """ Notes the time at the start of the iteration """ .time() return self def __exit__(self, exc_type, exc_value, exc_traceback): """ Prints the time taken at the end of the iteration """ print("Time to finish the task: ", time.time()-self.start) with Timer_Pythonpool() as timer: for i in range(1000000): pass
Выход –
Объяснение –
Мы начинаем с создания класса с именем “Timer_Python pool.” Затем мы настраиваем операторы, чтобы сделать их полезными в качестве контекстного менеджера. __enter__ функция выполняется в начале контекста, а __exit__ выполняется в конце контекста. Создание точки отсчета между этими двумя функциями может дать вам точное время, необходимое контексту для выполнения.
Что такое TimeTuple?
Многие из функций времени Python обрабатывают время как кортеж из 9 чисел, как показано ниже —
Показатель | поле | Ценности |
---|---|---|
4-значный год | 2016 | |
1 | Месяц | От 1 до 12 |
2 | День | От 1 до 31 |
3 | Час | От 0 до 23 |
4 | минут | От 0 до 59 |
5 | второй | От 0 до 61 (60 или 61 — високосные секунды) |
6 | День недели | От 0 до 6 (0 — понедельник) |
7 | День года | С 1 по 366 (юлианский день) |
8 | Дневного сбережения | -1, 0, 1, -1 означает, что библиотека определяет DST |
Например —
import time print (time.localtime());
Это приведет к следующему результату:
time.struct_time(tm_year = 2016, tm_mon = 2, tm_mday = 15, tm_hour = 9, tm_min = 29, tm_sec = 2, tm_wday = 0, tm_yday = 46, tm_isdst = 0)
Вышеуказанный кортеж эквивалентен структуре struct_time . Эта структура имеет следующие атрибуты —
Показатель | Атрибуты | Ценности |
---|---|---|
tm_year | 2016 | |
1 | tm_mon | От 1 до 12 |
2 | tm_mday | От 1 до 31 |
3 | tm_hour | От 0 до 23 |
4 | tm_min | От 0 до 59 |
5 | tm_sec | От 0 до 61 (60 или 61 — високосные секунды) |
6 | tm_wday | От 0 до 6 (0 — понедельник) |
7 | tm_yday | С 1 по 366 (юлианский день) |
8 | tm_isdst | -1, 0, 1, -1 означает, что библиотека определяет DST |
Command-Line Interface¶
When called as a program from the command line, the following form is used:
python -m timeit -n N -r N -u U -s S -h statement ...
Where the following options are understood:
-
how many times to execute ‘statement’
-
how many times to repeat the timer (default 5)
-
statement to be executed once initially (default )
-
measure process time, not wallclock time, using
instead of , which is the defaultNew in version 3.3.
-
specify a time unit for timer output; can select nsec, usec, msec, or sec
New in version 3.5.
-
print raw timing results; repeat for more digits precision
-
print a short usage message and exit
A multi-line statement may be given by specifying each line as a separate
statement argument; indented lines are possible by enclosing an argument in
quotes and using leading spaces. Multiple options are treated
similarly.
If is not given, a suitable number of loops is calculated by trying
increasing numbers from the sequence 1, 2, 5, 10, 20, 50, … until the total
time is at least 0.2 seconds.
measurements can be affected by other programs running on
the same machine, so the best thing to do when accurate timing is necessary is
to repeat the timing a few times and use the best time. The
option is good for this; the default of 5 repetitions is probably enough in
most cases. You can use to measure CPU time.
datetime.datetime
Объект datetime.datetime содержит всю информацию объектов datetime.date плюс datetime.time. Давайте приведем несколько примеров, для лучшего понимания разницы между этим объектом, и объектом datetime.date.
Python
import datetime
a = datetime.datetime(2017, 3, 5)
print(a) # datetime.datetime(2017, 3, 5, 0, 0)
b = datetime.datetime(2017, 3, 5, 12, 30, 10)
print(b) # datetime.datetime(2017, 3, 5, 12, 30, 10)
d = datetime.datetime(2017, 3, 5, 12, 30, 10)
print(d.year) # 2017
print(d.second) # 10
print(d.hour) # 12
1 2 3 4 5 6 7 8 9 10 11 12 |
importdatetime a=datetime.datetime(2017,3,5) print(a)# datetime.datetime(2017, 3, 5, 0, 0) b=datetime.datetime(2017,3,5,12,30,10) print(b)# datetime.datetime(2017, 3, 5, 12, 30, 10) d=datetime.datetime(2017,3,5,12,30,10) print(d.year)# 2017 print(d.second)# 10 print(d.hour)# 12 |
Мы видим, что datetime.datetime принимает несколько дополнительных аргументов: год, месяц, день, час, минута и секунда. Это также позволяет вам указывать информацию о микросекундах и часовом поясе. При работе с базами данных, данные типы объектов будут использоваться достаточно часто. Большую часть вашей работы, вам нужно будет конвертировать форматы date или datetime Python в форматы SQL datetime или timestamp
Обратите внимание на то, что today совместно с datetime.datetime использует два разных метода:
Python
import datetime
a = datetime.datetime.today()
print(a) # datetime.datetime(2017, 4, 5, 0, 16, 54, 989663)
b = datetime.datetime.now()
print(b) # datetime.datetime(2017, 4, 5, 0, 17, 8, 24239)
1 2 3 4 5 6 7 |
importdatetime a=datetime.datetime.today() print(a)# datetime.datetime(2017, 4, 5, 0, 16, 54, 989663) b=datetime.datetime.now() print(b)# datetime.datetime(2017, 4, 5, 0, 17, 8, 24239) |
Модуль datetime содержит другой метод, под названием strftime. Этот метод позволяет разработчику создавать строку, отображающую время в более понятной для человека форме. Существует целая таблица параметров форматирования, с которой рекомендуется ознакомиться в документации Python, в . Давайте взглянем на несколько примеров, показывающих всю полезность данного метода:
Python
import datetime
a = datetime.datetime.today().strftime(«%Y%m%d»)
print(a) # ‘20170405’
today = datetime.datetime.today()
print( today.strftime(«%m/%d/%Y») ) # ’04/05/2017′
print( today.strftime(«%Y-%m-%d-%H.%M.%S») ) # 2017-04-05-00.18.00
1 2 3 4 5 6 7 8 9 |
importdatetime a=datetime.datetime.today().strftime(«%Y%m%d») print(a)# ‘20170405’ today=datetime.datetime.today() print(today.strftime(«%m/%d/%Y»))# ’04/05/2017′ print(today.strftime(«%Y-%m-%d-%H.%M.%S»))# 2017-04-05-00.18.00 |
Первый пример – это скорее хитрость. В нем показано, как конвертировать сегодняшний объект datetime в строку, следующую за форматом YYYYMMDD (ГГГГММДД). Второй пример более наглядный.
В нем мы присваиваем объект datetime переменной под названием today и применяем два разных параметра форматирования строки. Первый параметр добавляет косые черточки между элементами datetime, а также перегруппировывает datetime, теперь он делится на месяц, день и год. В последнем примере мы создаем временную отметку, которая следует типичному формату: YYYY-MM-DD.HH.MM.SS. Если вам нужно указать год как двухзначный (“YY”), вы можете заменить %Y на %y.
Clock ID Constants¶
These constants are used as parameters for and
.
-
Identical to , except it also includes any time that
the system is suspended.This allows applications to get a suspend-aware monotonic clock without
having to deal with the complications of , which may
have discontinuities if the time is changed using or
similar.: Linux 2.6.39 or later.
New in version 3.7.
-
The Solaris OS has a timer that attempts to use an optimal
hardware source, and may give close to nanosecond resolution.
is the nonadjustable, high-resolution clock.: Solaris.
New in version 3.3.
-
Clock that cannot be set and represents monotonic time since some unspecified
starting point.: Unix.
New in version 3.3.
-
Similar to , but provides access to a raw
hardware-based time that is not subject to NTP adjustments.: Linux 2.6.28 and newer, macOS 10.12 and newer.
New in version 3.3.
-
High-resolution per-process timer from the CPU.
: Unix.
New in version 3.3.
-
High-resolution per-process timer from the CPU.
: FreeBSD, NetBSD 7 or later, OpenBSD.
New in version 3.7.
-
The system must have a current leap second table in order for this to give
the correct answer. PTP or NTP software can maintain a leap second table.: Linux.
New in version 3.9.
-
Thread-specific CPU-time clock.
: Unix.
New in version 3.3.
-
Time whose absolute value is the time the system has been running and not
suspended, providing accurate uptime measurement, both absolute and
interval.: FreeBSD, OpenBSD 5.5 or later.
New in version 3.7.
-
Clock that increments monotonically, tracking the time since an arbitrary
point, unaffected by frequency or time adjustments and not incremented while
the system is asleep.: macOS 10.12 and newer.
New in version 3.8.
The following constant is the only parameter that can be sent to
.
Сравните производительность блоков кода
Мы можем легко сравнить производительность нескольких блоков кода с помощью .
Мы будем использовать для этой цели таймер, используя .
Время, затрачиваемое на блок кода, будет текущим временем минус начальное время, взятое за эталон, которое вы можете передавать через переменные.
import timeit start_time = timeit.default_timer() function_1() time_1 = timeit.default_timer() - start_time start_time = timeit.default_timer() function_2() time_2 = timeit.default_timer() - start_time print('Function 1 took', time_1) print('Function 2 took', time_2)
Давайте протестируем 2 функции в массиве numpy и и посмотрим, как они сравниваются.
import timeit import numpy as np def time_range(size): for i in range(size): pass def time_arange(size): np.arange(size) if __name__ == '__main__': # For smaller arrays print('Array size: 1000') start_time = timeit.default_timer(); time_range(1000) range_time_1 = timeit.default_timer() - start_time start_time = timeit.default_timer(); time_arange(1000) arange_time_1 = timeit.default_timer() - start_time # For large arrays print('Array size: 1000000') start_time = timeit.default_timer(); time_range(1000000) range_time_2 = timeit.default_timer() - start_time start_time = timeit.default_timer(); time_arange(1000000) arange_time_2 = timeit.default_timer() - start_time print(f'size 1000: range() took {range_time_1}') print(f'size 1000: arange() took {arange_time_1}') print(f'size 1000000: range() took {range_time_2}') print(f'size 1000000: arange() took {arange_time_2}')
Выход
Array size: 1000 Array size: 1000000 size 1000: range() took 2.2970001737121493e-05 size 1000: arange() took 8.393999451072887e-06 size 1000000: range() took 0.02567379199899733 size 1000000: arange() took 0.0031752489994687494
Таким образом, мы могли легко использовать для сравнения производительности различных функций.
Отличия и особенности
JavaScript прекрасен тем, что его можно запустить в консоли любого современного браузера. Это для него родная среда, и JS легко работает со страницами, объектами на ней, вкладками браузера и всем, что с ним связано.
Python — более универсальный язык, который работает не только с браузерами, поэтому для него нужен отдельный интерпретатор. Интерпретатор — это программа, которая берёт исходный код и выполняет команду за командой. Вы можете написать отличный код, но чтобы его исполнить, вам всегда нужен будет интерпретатор.
Есть два способа запустить Python-код:
1. Поставить Python себе на компьютер — этот способ хорош, если вы решили основательно изучить язык или просто любите, когда всё быстро и под контролем. Скачать Python можно с официального сайта — есть версии для всех основных операционных систем. Из минусов — нужно разбираться в параметрах установки и настройки и уметь работать с командной строкой. Плюсы — полный контроль и быстродействие.
2. Использовать онлайн-сервисы, например, этот: onlinegdb.com/online_python_compiler. Работает точно так же — пишете код, нажимаете кнопку Run и смотрите на результат.
Минусы: так как это онлайн-сервис, им пользуется одновременно много человек, поэтому быстродействия от него ждать не стоит. С подключением внешних модулей тоже могут возникнуть проблемы, но с этим можно разобраться, если потратить немного времени.
Плюс: не нужно ничего настраивать и устанавливать, всё работает сразу из браузера. Есть подсветка синтаксиса, сообщения об ошибках и возможность сохранения кода.
Сейчас мы напишем таймер с оглядкой на онлайновый сервис. А отдельно ещё расскажем об установке.
Модуль time
Модуль предоставляет функции, которые сообщают нам время в «секундах с начала эпохи», а также другие утилиты.
Unix Epoch Time
Это формат, в котором вы должны получить временные метки для сохранения в базах данных. Это простое число с плавающей запятой, которое можно преобразовать в целое число. Это также хорошо для арифметики в секундах, так как представляет количество секунд с 1 января 1970 года 00:00:00, и это свет памяти относительно других представлений времени, которые мы будем смотреть дальше:
Эта временная метка не учитывает високосных секунд, поэтому она не линейна — високосные секунды игнорируются. Таким образом, хотя он не эквивалентен международному стандарту UTC, он близок, и, следовательно, довольно хорош для большинства случаев ведения учета.
Однако это не идеально для планирования человека. Если у вас есть будущее событие, которое вы хотите провести в определенный момент времени, вы захотите сохранить это время со строкой, которую можно проанализировать в объекте datetime или сериализованном объекте datetime (они будут описаны позже).
Вы также можете представлять текущее время способом, предпочитаемым вашей операционной системой (что означает, что оно может изменяться при изменении системных настроек, поэтому не полагайтесь на то, что оно будет стандартным для всех систем, как я ожидал, другие) , Это обычно удобно для пользователя, но обычно не приводит к строкам, которые можно сортировать в хронологическом порядке:
Вы также можете гидрировать метки времени в удобочитаемую форму с помощью :
Это преобразование также не подходит для ведения записей (за исключением текста, который будет анализироваться только людьми — и с улучшенным оптическим распознаванием символов и искусственным интеллектом, я думаю, число этих случаев уменьшится).
Получение форматированной строки с датой и временем.
Описание:
Функция модуля преобразовывает кортеж или структуру времени , представляющие время, возвращаемое или в строку, указанную форматом .
Если аргумент не указан, используется текущее время, возвращаемое функцией . Формат должен быть строкой. Если какое-либо поле в структуре находится вне допустимого диапазона, то вызывается исключение .
Значение 0 является допустимым аргументом для любой позиции в именованном кортеже структуры. Если это некорректный параметр, то значение принудительно устанавливается на правильное.
Следующие директивы могут быть встроены в строку формата. Они отображаются без указания необязательной ширины поля и точности и заменяются указанными символами в результате работы :
Директива | Смысл | Примечание |
Сокращенное название дня недели. | ||
Полное название дня недели. | ||
Сокращенное название месяца в локали. | ||
Полное название месяца в локали. | ||
Соответствующая локали дата и время. | ||
День месяца в виде десятичного числа . | ||
Час (24-часовой формат) в виде десятичного числа . | ||
Час (12-часовой формат) в виде десятичного числа . | ||
День года в виде десятичного числа . | ||
Месяц как десятичное число . | ||
Минута в виде десятичного числа . | ||
Либо AM, либо PM в 12-часовом формате. | (1) | |
Секунды как десятичное число . | (2) | |
Номер недели в году (воскресенье — первый день недели) в виде десятичного числа . Все дни в новом году, предшествующем первому воскресенью, считаются на неделе 0. | (3) | |
День недели в виде десятичного числа . | ||
Номер недели в году (понедельник — первый день недели) в виде десятичного числа . Все дни в новом году, предшествующем первому понедельнику, считаются на неделе 0. | (3) | |
Соответствующее представление даты локали. | ||
Соответствующее время локали. | ||
Год без века как десятичное число . | ||
Год с веком как десятичное число. | ||
Смещение часового пояса, указывающее положительную или отрицательную разницу во времени относительно времени UTC/GMT в формате +ЧЧММ или -ЧЧММ, где Ч представляет цифры часа, а М представляет цифры минуты . | ||
Название часового пояса (без символов, если часовой пояс не существует). | ||
Буквальный символ ‘%’. |
Примечание:
- При использовании с функцией директива влияет только на час выходного поля, если для анализа часа используется директива .
- Диапазон действителен от 0 до 61. Значение 60 действительно в метках времени, представляющих високосные секунды, а значение 61 поддерживается по историческим причинам.
- При использовании с функцией директивы и используются только в вычислениях, когда указаны день недели и год.
Примеры использования:
Формат даты, указанным в стандарте электронной почты RFC 2822.
>>> from time import gmtime, strftime >>> strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime()) # 'Fri, 24 Apr 2020 16:22:54 +0000'
Формат даты для записи в базу данных.
>>> from time >>> time.strftime("%Y-%m-%d", time.localtime()) # '2020-04-24'
Человеческий формат даты, используемый в обиходе.
Вывод
В основном все используют таймеры для трех целей. Первый-это запись времени выполнения вашего кода. А во-вторых, добавить напоминание о чем-то с помощью таймера. К счастью, оба они могут быть созданы в Python. Используя различные модули и библиотеки, вы можете гарантировать, что записываете время с предельной точностью.
И последнее, но не менее важное: таймер – это подкласс класса threading в python. Если мы хотим запустить какую-либо функцию через определенный промежуток времени, мы можем использовать класс python timer
В параметре args, который по умолчанию равен None, мы можем указать аргументы, которые мы хотим передать методу обратного вызова .
Попробуйте запустить программы на вашей стороне и дайте нам знать, если у вас есть какие-либо вопросы.