2
respostas

[Dúvida] datetime x pytz

Após ler o artigo "Python datetime: Como faço para definir data e hora em Python?", fiz alguns testes e verifiquei que no meu computador ocorre uma diferença de 3 a 6 minutos da hora utilizando datetime.now() para a hora atual correta.

Esse problema não ocorre quando utilizo a biblioteca pytz.

Porque isso ocorre?

2 respostas

Oi Bruno, tudo bem?

A diferença de tempo que você está observando provavelmente se deve ao fato de que o método datetime.now() retorna a hora local sem levar em consideração o fuso horário.

Por outro lado, a biblioteca pytz permite que você trabalhe com fusos horários, o que pode fazer com que a hora retornada seja mais precisa.

Por exemplo, se você estiver em São Paulo, que está no fuso horário GMT-3, e usar datetime.now(), a hora retornada será a hora local do seu computador, mas sem considerar o fuso horário. Se você usar pytz, poderá especificar o fuso horário de São Paulo e a hora retornada será a hora correta de São Paulo.

Espero ter te ajudado a entender melhor.

Um abraço e bons estudos.

Obrigado Lorena, é um problema de fuso, pois, usando datetime() deu uma diferença de 3 a 6 minutos em relação ao horário do computador. Se fosse uma diferença de fuso, a diferença seria de no mínimo 30 minutos.