Estou trabalhando com tz_localize
a função do pandas para converter datas da hora local para UTC:
time_zone = 'America/Santiago'
pd.to_datetime(pd.to_datetime(df['mydate']).apply(lambda x: datetime.strftime(x, '%d-%m-%Y %H:%M:%S'))).dt.tz_localize(time_zone).dt.tz_convert('UTC').dt.tz_localize(None)
Isso funciona bem, mas agora gostaria de verificar se o definido pelo usuário time_zone
realmente existe antes de passá-lo para tz_localize
. Encontrei listas de países disponíveis online, mas não sei como acessar essas informações diretamente em Python.
Eu vi esta página sobre zoneinfo mas estou procurando uma alternativa Python/pandas.
Usando a biblioteca padrão
zoneinfo
etzdata
:Alternativamente, com
pytz
(agora obsoleto):Se você tiver python <3.9, poderá imitar a
zoneinfo.available_timezones
função com: