Instale o módulo PYZT:
Execute o seguinte comando para instalar o módulo pyzt antes de praticar os exemplos deste tutorial.
$ pip install pytzExemplo-1: Imprimir todos os fusos horários suportados e comumente usados
O script a seguir imprimirá todos os fusos horários suportados e os fusos horários amplamente usados usando o pyzy módulo. O pyzt módulo é importado no início do script. pytz.all_timezones atributo retorna a lista de todos os fusos horários suportados como um objeto de lista. pytz.common_timezones atributo retorna a lista de todos os fusos horários comumente usados como um objeto de lista. Duas listas serão impressas após a execução deste script.
# Importar módulo pytzimportar pytz
# Imprime todos os fusos horários suportados
print ('Os fusos horários suportados pelo módulo pytz: \ n', pytz.all_timezones, '\ n')
# Imprime os fusos horários mais usados
print ('Fusos horários normalmente usados: \ n', pytz.common_timezones, '\ n')
Resultado:
A seguinte saída aparecerá após a execução do script acima.
Exemplo-2: Imprimir nomes de países
O script a seguir imprimirá a lista de nomes de países com códigos de países e o nome de um código de país específico. pytz.country_names.Itens() método retorna um objeto de dicionário de nomes de países com o código do país. Os códigos de país são atribuídos nas chaves do objeto do dicionário e os nomes dos países são atribuídos nos valores do objeto do dicionário. O loop for foi usado no script para imprimir os nomes dos países com o código do país em cada linha, iterando o objeto de dicionário retornado por pytz.country_names.Itens(). Em seguida, o nome do país do 'JP'o código do país será impresso.
# Importar módulo pytzimportar pytz
"
Imprima o nome do país com o código do país em cada linha
usando for loop
"
imprimir ('country_names:')
para chave, val em pytz.country_names.Itens():
print (val, '(', key, ')')
# Imprime o nome do país do código do país específico
print ('\ nNome do país com base no código do país (JP):', pytz.country_names ['JP'])
Resultado:
A seguinte saída aparecerá após a execução do script acima. A saída mostra os nomes e códigos dos países entre colchetes. O nome do país de 'JP' é o Japão que é impresso depois.
Exemplo-3: Imprimir data e hora com base no fuso horário
Os valores de data e hora variam de acordo com o fuso horário. O seguinte script irá imprimir a data e hora do fuso horário atual primeiro. Em seguida, o fuso horário será alterado para US / Eastern usando pytz.método timezone () e a data e hora serão impressos com base no US / Eastern fuso horário. Em seguida, o fuso horário será alterado para Asia / Hong_Kong fuso horário, e a data e hora serão impressas com base em Asia / Hong_Kong fuso horário. A data e hora dos fusos horários UTC e IST serão impressos posteriormente.
# Importar módulo datetimeimportar data e hora como dt
# Importar módulo pyzt
importar pytz
# Recuperar a data atual
source_date = dt.data hora.agora()
# Imprime os dados e a hora atuais
print ('A data e hora atuais: \ n', source_date)
# Defina o fuso horário para US / Eastern
currentTimeZone = pytz.fuso horário ('EUA / Leste')
# Imprime o fuso horário atual Asia / Hong_Kong
imprimir ('\ nO fuso horário está definido para: \ n', currentTimeZone)
# Leia e imprima a data e hora atuais do fuso horário
currentDateWithTimeZone = currentTimeZone.localize (source_date)
print ('A data e hora deste fuso horário: \ n', currentDateWithTimeZone)
# Defina o fuso horário de destino
newTimeZone = pytz.fuso horário ('Ásia / Hong_Kong')
imprimir ('\ nO fuso horário está definido para: \ n', newTimeZone)
# Leia e imprima a data e hora atuais do fuso horário recém-definido
newDateWithTimezone = currentDateWithTimeZone.astimezone (newTimeZone)
print ('A data e hora deste fuso horário: \ n', newDateWithTimezone)
# Leia a data e hora do fuso horário especificado
print ('\ nDatetime of UTC Time-zone:', dt.data hora.agora (tz = currentTimeZone))
print ('Data e hora do fuso horário IST:', dt.data hora.agora (tz = newTimeZone))
Resultado:
A seguinte saída aparecerá após a execução do script acima. A saída mostra que os valores de data e hora variam de acordo com o fuso horário.
Exemplo 4: Imprima a data e hora formatada
Nos exemplos anteriores, os valores de data e hora são impressos no formato padrão. O script a seguir imprimirá os dados formatados e a hora com base no fuso horário selecionado. O formato da data e hora foi definido no início do script. De acordo com o formato, a data será impressa em dd-mm-aaaa formato, e a hora será impressa em hh: mm: ss formato. Em seguida, o fuso horário será atribuído a America / Toronto, e a data e hora serão impressas usando o strftime () função com o formato mencionado acima. Em seguida, o fuso horário será atribuído a Asia / Dhaka e impresso como antes.
# Importar módulo DateTimede datetime import datetime
# Importar módulo de fuso horário
do fuso horário de importação de pytz
# Defina o formato de data e hora
dt_format = "% d-% m-% Y% H:% M:% S"
# Defina a hora atual para a zona América / Toronto
torontoZone = datetime.agora (fuso horário ('América / Toronto'))
print ('Data e hora do toronto zone: \ n', torontoZone.strftime (dt_format))
# Altere o fuso horário para Ásia / Dhaka
dhakaZone = torontoZone.astimezone (fuso horário ('Ásia / Dhaka'))
print ('Data e hora da zona dhaka: \ n', dhakaZone.strftime (dt_format))
Resultado:
A seguinte saída aparecerá após a execução do script acima. O resultado mostra que a diferença horária entre Toronto e Dhaka é de 10 horas.
Conclusão:
O pyzt módulo tem muitas funções integradas para trabalhar com os valores de data e hora de diferentes fusos horários. Os valores de data e hora do site podem ser alterados de acordo com o fuso horário do visitante usando este módulo. Os principais usos deste módulo foram explicados neste tutorial usando diferentes exemplos para ajudar os leitores a entender o propósito deste módulo.