Автор оригинала: Pankaj Kumar.
Модуль стрелки Python – это библиотека замены для DateTime. Это позволяет легко создавать дату и время экземпляров с осознанием часовой зоны. Это простой модуль с человеческим подходом к созданию, манипулированию, форматированию и преобразованию дат, раз и временных метров.
Модуль стрелки Python
Мы можем установить модуль стрелки Python, используя команду PIP.
pip install arrow
Модуль со стрелкой Python – это Aware & UTC по умолчанию. Он обеспечивает поддержку создания дат от аргументов, Timestamp и т. Д. Мы можем легко выполнять дату времени манипуляций, преобразование одной часовой пояс в другое, время переключения, чтобы получить будущее или прошедшую дату, дату формата для строки и анализа строки для создания экземпляра даты.
Пример стрелки Python
Давайте посмотрим, как использовать модуль со стрелкой, чтобы получить текущее время UTC, IST Time и местное время.
utc_time = arrow.utcnow() print('Current UTC Time =', utc_time) ist_time = arrow.now('Asia/Calcutta') print('Current IST Time =', ist_time) print('tzinfo =', ist_time.tzinfo) local_time = arrow.now() print('Current Local Time =', local_time)
Выход:
Current UTC Time = 2018-09-26T06:16:54.724068+00:00 Current IST Time = 2018-09-26T11:46:54.724375+05:30 tzinfo = tzfile('/usr/share/zoneinfo/Asia/Calcutta') Current Local Time = 2018-09-26T11:46:54.724472+05:30
Преобразование часовой пояс
Мы можем использовать для () функции для преобразования одного часового пояса на другой.
pst_time = ist_time.to('US/Pacific') print('Current PST Time =', pst_time)
Выход:
Current PST Time = 2018-09-25T23:16:54.724375-07:00
Дата отметку Timestamp на сегодняшний день
print('Current Local Timestamp =', local_time.timestamp) dt = arrow.get(1537941232) print('Date from Timestamp =', dt)
Выход:
Current Local Timestamp = 1537942614 Date from Timestamp = 2018-09-26T05:53:52+00:00
Дата отформатированной строки
print('Formatted Date =', local_time.format()) print('Specific Formatted Date =', local_time.format('YYYY-MM-DD HH:mm:ss ZZ'))
Выход:
Formatted Date = 2018-09-26 11:46:54+05:30 Specific Formatted Date = 2018-09-26 11:46:54 +05:30
Разбор строки на сегодняшний день
dt = arrow.get('2013-05-05 12:30:45', 'YYYY-MM-DD HH:mm:ss') print(type(dt)) print(dt)
Выход:
2013-05-05T12:30:45+00:00
Суммаризация даты от аргументов
dt = arrow.get(2018, 9, 26) print(dt)
Выход: 2018-09-26T00: 00: 00 + 00: 00
Дата времени манипуляции
Мы можем использовать функцию замены () и Shift (), чтобы получить будущие и прошлые даты.
utc_time = arrow.utcnow() print('Current UTC Time =', utc_time) utc_time_updated = utc_time.replace(year=2019, month=6) print('Updated UTC Time =', utc_time_updated) utc_time_updated = utc_time.shift(years=-2, weeks=4) print('Updated UTC Time =', utc_time_updated)
Выход:
Current UTC Time = 2018-09-26T06:16:54.727167+00:00 Updated UTC Time = 2019-06-26T06:16:54.727167+00:00 Updated UTC Time = 2016-10-24T06:16:54.727167+00:00
Относительная дата чистябабильного формата человека
past = arrow.utcnow().shift(hours=-1) print(past.humanize()) future = arrow.utcnow().shift(hours=+1) print(future.humanize()) print(future.humanize(locale='de_DE')) print(future.humanize(past))
Выход:
an hour ago in an hour in einer Stunde in 2 hours
Создание экземпляра стрелки из DateTime
from datetime import datetime dt = datetime.now() arrow_dt = arrow.Arrow.fromdate(dt) print(dt) print(arrow_dt)
Выход:
2018-09-26 12:34:57.532227 2018-09-26T00:00:00+00:00
Это все для краткого введения модуля стрелки Python. Есть много других функций, доступных в этом модуле, вы можете получить полные детали из их Документация Отказ
Резюме
Модуль со стрелками Python – это замена для встроенного модуля DateTime. Он знает часовой пояс, и есть много полезных функций, которые помогут нам в дату времени. Это очень похоже на модуль Python маятника.