"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como analisar strings de carimbo de data/hora com nomes abreviados de fuso horário em Python?

Como analisar strings de carimbo de data/hora com nomes abreviados de fuso horário em Python?

Publicado em 2024-11-08
Navegar:959

How to Parse Timestamp Strings with Abbreviated Timezone Names in Python?

Análise de strings de carimbo de data/hora com nomes abreviados de fuso horário em Python

A análise de strings de carimbo de data/hora com nomes abreviados de fuso horário representa um desafio único em Python. A biblioteca dateutil integrada fornece uma função parser.parse() que facilita a análise de carimbo de data e hora, mas não aborda inerentemente abreviações de fuso horário.

Para resolver esse problema, uma solução simples e eficaz utiliza o argumento da palavra-chave tzinfos em analisador.parse(). Este argumento aceita um dicionário que mapeia abreviações de fuso horário para seus deslocamentos GMT correspondentes em segundos.

Para preencher o dicionário tzinfos, uma lista de abreviações e deslocamentos de fuso horário pode ser criada manualmente ou obtida de fontes externas. Depois que o dicionário for estabelecido, o código a seguir demonstra como analisar strings de carimbo de data/hora e recuperar seus fusos horários correspondentes:

import dateutil.parser as dp

s = 'Sat, 11/01/09 8:00PM'

# Create timezone abbreviation to offset dictionary
tzd = {
    'PST': -8*3600,
    'PDT': -7*3600,
    'MST': -7*3600,
    'MDT': -6*3600,
    'CST': -6*3600,
    'CDT': -5*3600,
    'EST': -5*3600,
    'EDT': -4*3600
}

for tz_code in ('PST','PDT','MST','MDT','CST','CDT','EST','EDT'):
    dt = s ' ' tz_code
    print(dt, '=', dp.parse(dt, tzinfos=tzd))

Este código itera pelas abreviações de fuso horário fornecidas e, para cada abreviação, ele analisa a string de carimbo de data/hora e exibe o objeto de data e hora analisado junto com o nome do fuso horário correspondente.

Essa abordagem lida efetivamente com strings de carimbo de data/hora com fusos horários abreviados, permitindo para fácil análise e interpretação.

Declaração de lançamento Este artigo é reproduzido em: 1729731286 Se houver alguma violação, entre em contato com [email protected] para excluí -lo.
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3