ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Пятница, 27 декабря, 2024

Как использовать модуль PYTZ в Python

Как использовать модуль PYTZ в Python

Значения даты и времени зависят от зоны. Эти значения необходимо изменить для тех приложений Python, которые требуют работы с международными пользователями. Согласно зоне, модуль dateTime Python не может преобразовывать значения даты и времени. Эту проблему можно решить, используя модуль pytz Python. Этот модуль не установлен в Python. Итак, вам необходимо установить этот модуль, прежде чем использовать его в скрипте. В этой статье показано, как модуль pyzt можно установить и использовать в Python.

 

Установите модуль PYZT:

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

$ pip install pytz

Пример 1: Распечатать все поддерживаемые и часто используемые часовые пояса

Следующий скрипт распечатает все поддерживаемые часовые пояса и широко используемые часовые пояса с помощью модуля pyzy . Модуль pyzt импортируется в начале скрипта. Атрибут pytz.all_timezones возвращает список всех поддерживаемых часовых поясов в виде объекта списка. Атрибут pytz.common_timezones возвращает список всех часто используемых часовых поясов в виде объекта списка. После выполнения этого скрипта будут напечатаны два списка.

# Импортировать модуль pytz
import pytz 

# Распечатать все поддерживаемые часовые пояса
print('Часовые пояса, поддерживаемые модулем pytz: \n', pytz.All_timezones, '\n ')

# Распечатать часто используемые часовые пояса
print('Обычно используемые часовые пояса: \n', pytz.common_timezones, '\n ')

 

Пример 2: напечатать названия стран

Следующий скрипт распечатает список названий стран с кодами стран и название страны с конкретным кодом страны. Метод pytz.country_names.items() возвращает объект словаря названий стран с кодом страны. Коды стран назначаются в ключах объекта словаря, а названия стран назначаются в значениях объекта словаря. Цикл for используется в сценарии для печати названий стран с кодом страны в каждой строке путем повторения объекта словаря, возвращаемого функцией pytz.country_names.items(). Затем будет напечатано название страны с кодом страны «RU».

# Импортировать модуль pytz
import pytz
'' '
Вывести название страны с кодом страны в каждой строке,
используя цикл for
' ''
print('country_names:')
for key, val in pytz.country_names.items():
print(val, '(', key, ')')

# Распечатать название страны с конкретным кодом страны
print('\n Название страны на основе кода страны (RU):', pytz.country_names ['RU'])

 

Пример-3: Распечатать дату и время в зависимости от часового пояса

Значения даты и времени зависят от часового пояса. Следующий скрипт сначала напечатает дату и время текущего часового пояса. Затем часовой пояс будет изменен на US/Eastern с помощью метода pytz.timezone(), а дата и время будут напечатаны на основе US/Eastern часового пояса. Затем часовой пояс будет изменен на часовой пояс Europe/Moscow, а дата и время будут напечатаны в соответствии с часовым поясом Europe/Moscow. Дата и время часовых поясов UTC и IST будут напечатаны позже.

# Импортировать модуль datetime
import datetime as dt

# Импортировать модуль pyzt
import pytz

# Получить текущую дату
source_date = dt.datetime.now()

# Распечатать текущие данные и время
print('Текущая дата и время: \n', source_date)

# Установить часовой пояс на US/Eastern
currentTimeZone = pytz.timezone('US/Eastern')

# Вывести текущий часовой пояс Europe/Moscow
print('\nЧасовой пояс установлен на: \n', currentTimeZone)

# Прочитать и распечатать текущую дату и время часового пояса
currentDateWithTimeZone = currentTimeZone.localize(source_date)
print('Дата и время этого часового пояса: \n', currentDateWithTimeZone)

# Установите целевой часовой пояс
newTimeZone = pytz.timezone('Europe/Moscow')
print('\n Часовой пояс установлен на: \n',newTimeZone)

# Прочитать и распечатать текущую дату и время нового часового пояса
newDateWithTimezone = currentDateWithTimeZone.astimezone(newTimeZone)
print('Дата и время этого часового пояса: \n', newDateWithTimezone)

# Прочитать дату и время указанного часового пояса
print('\n Datetime of UTC Time-zone:', dt.datetime.now(tz = currentTimeZone))
print('Datetime часового пояса IST:', dt.datetime.now(tz = newTimeZone))

 

Пример-4: Распечатать отформатированные дату и время

В предыдущих примерах значения даты и времени печатаются в формате по умолчанию. Следующий скрипт распечатает отформатированные данные и время в соответствии с выбранным часовым поясом. Формат даты и времени определен в начале скрипта. В соответствии с форматом дата будет напечатана в формате дд-мм-гггг, а время будет напечатано в формате чч: мм: сс. Затем часовой пояс будет назначен Europe/Moscow, а дата и время будут напечатаны с использованием функции strftime() в указанном выше формате. Затем часовой пояс будет присвоен Азии/Дакке и напечатан, как и раньше.

# Импортировать модуль DateTime
from datetime import datetime

# Импортировать модуль часового пояса
from pytz import timezone

# Установить формат даты и времени
dt_format = "%d-%m-%Y %H:%M:%S"

# Установить текущее время в зоне Europe/Moscow
moscowZone = datetime.now(timezone('Europe/Moscow'))
print('Дата и время зоны Moscow: \n', moscowZone.strftime(dt_format))

# Измените часовой пояс на Asia/Dhaka
dhakaZone = moscowZone.astimezone(timezone('Asia/Dhaka'))
print('Дата и время зоны Дакки: \n', dhakaZone.strftime(dt_format))

 

Заключение:

Модуль pyzt имеет множество встроенных функций для работы со значениями даты и времени различных часовых поясов. С помощью этого модуля значения даты и времени веб-сайта можно изменить в соответствии с часовым поясом посетителя. Основное использование этого модуля было объяснено в этой статье с использованием различных примеров, чтобы помочь читателям понять цель этого модуля.

Exit mobile version