Analyse des chaînes d'horodatage avec des noms de fuseau horaire abrégés en Python
L'analyse des chaînes d'horodatage avec des noms de fuseau horaire abrégés pose un défi unique en Python. La bibliothèque dateutil intégrée fournit une fonction parser.parse() qui facilite l'analyse de l'horodatage, mais elle ne traite pas intrinsèquement les abréviations de fuseau horaire.
Pour résoudre ce problème, une solution simple et efficace utilise l'argument de mot-clé tzinfos dans analyseur.parse(). Cet argument accepte un dictionnaire mappant les abréviations de fuseau horaire avec leurs décalages GMT correspondants en secondes.
Pour remplir le dictionnaire tzinfos, une liste d'abréviations et de décalages de fuseau horaire peut être créée manuellement ou obtenue à partir de sources externes. Une fois le dictionnaire établi, le code suivant montre comment analyser les chaînes d'horodatage et récupérer leurs fuseaux horaires correspondants :
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))
Ce code parcourt les abréviations de fuseau horaire fournies, et pour chaque abréviation, il analyse la chaîne d'horodatage et affiche l'objet datetime analysé ainsi que le nom du fuseau horaire correspondant.
Cette approche gère efficacement les chaînes d'horodatage avec des fuseaux horaires abrégés, permettant une analyse et une interprétation faciles.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3