Analyse des chaînes de date/heure avec des noms de fuseau horaire abrégés en Python
Lors de l'analyse des chaînes de date/heure, il peut être difficile de gérer les fuseaux horaires abrégés noms. La fonction parse() de Dateutil, couramment utilisée pour l'analyse de dates en Python, peut ne pas gérer intrinsèquement les abréviations de fuseau horaire.
Solution avec l'argument de mot-clé tzinfos
Pour résoudre ce problème, vous pouvez utilisez l'argument de mot-clé tzinfos dans parse() de dateutil. Cet argument vous permet de transmettre un dictionnaire mappant les abréviations de fuseau horaire avec leurs décalages GMT correspondants en secondes. Par exemple, pour gérer un dictionnaire de fuseaux horaires connus (tzd) :
<code class="python">import dateutil.parser as dp tzd = {'EST': -5*3600} # Example dictionary s = 'Sat, 11/01/09 8:00PM EST' dt = dp.parse(s, tzinfos=tzd) print(dt) # Output: 2009-11-01 20:00:00-05:00</code>
Remplir le dictionnaire tzinfos
Le dictionnaire tzinfos peut être alimenté à partir de diverses sources. Une approche consiste à attribuer manuellement chaque abréviation de fuseau horaire à son décalage GMT correspondant. Vous pouvez également vous référer à des bases de données de fuseaux horaires prédéfinis ou à des sites Web comme timeanddate.com pour des listes plus complètes.
Remarque sur la dénomination des fuseaux horaires
Gardez à l'esprit que certains fuseaux horaires les abréviations peuvent correspondre à plusieurs fuseaux horaires. La résolution de ces conflits peut impliquer de donner la priorité aux variantes les plus couramment utilisées. Il convient également de noter que tous les fuseaux horaires ne peuvent pas avoir d'abréviations universellement reconnues, ce qui nécessite potentiellement une personnalisation plus poussée en fonction de votre cas d'utilisation.
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!