Maison  >  Article  >  développement back-end  >  Comment gérer les noms de fuseau horaire abrégés dans l'analyse de date/heure avec Python ?

Comment gérer les noms de fuseau horaire abrégés dans l'analyse de date/heure avec Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-24 08:54:01293parcourir

How to Handle Abbreviated Time Zone Names in Date/Time Parsing with Python?

Analyse des chaînes de date/heure avec des noms de fuseau horaire abrégés en Python

L'analyse des horodatages contenant des noms de fuseau horaire abrégés peut être difficile en Python. On pourrait tenter d'utiliser la fonction parse() de la bibliothèque dateutil, mais elle ne gère pas nativement les fuseaux horaires abrégés.

Une solution complète

Heureusement, dateutil propose une alternative solution. En transmettant un dictionnaire de noms de fuseaux horaires aux décalages GMT à l'argument du mot-clé tzinfos, nous pouvons spécifier les informations de fuseau horaire nécessaires. Cela permet une flexibilité dans l’analyse d’un large éventail d’abréviations de fuseaux horaires. Voici un exemple :

<code class="python">import dateutil.parser as dp

# Dictionary mapping time zone abbreviations to GMT offsets
tzd = {'EST': -5*3600, 'PDT': -7*3600, ...}

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

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

Dans cet exemple, le script parcourt une liste d'abréviations de fuseau horaire courantes et analyse la chaîne d'horodatage donnée en conséquence. Le résultat serait similaire à :

Sat, 11/01/09 8:00PM PST = 2009-11-01 20:00:00-08:00
Sat, 11/01/09 8:00PM PDT = 2009-11-01 20:00:00-07:00
...

Remplir le dictionnaire des fuseaux horaires

Générer le dictionnaire des fuseaux horaires est aussi simple que de créer une carte des abréviations de leur décalages GMT correspondants. Pour cela, on peut consulter des ressources telles que timeanddate.com ou Wikipedia. Notez que certaines abréviations peuvent avoir plusieurs interprétations possibles, il est donc important de réfléchir attentivement à l'interprétation à attribuer en fonction du contexte.

Conclusion

En tirant parti de l'argument du mot clé tzinfos dans La fonction parse() de dateutil, nous pouvons analyser les horodatages avec des fuseaux horaires abrégés en Python, permettant des capacités de gestion de date/heure plus complètes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn