Python strptime() et les fuseaux horaires?

J'ai un fichier CSV à partir d'un fichier de vidage Blackberry IPD de sauvegarde, créé à l'aide de IPDDump.
La date/heure de chaînes à regarder ici, quelque chose comme ça
(où EST est un Australien fuseau horaire):

Tue Jun 22 07:46:22 EST 2010

J'ai besoin d'être en mesure d'analyser cette date en Python. Au début, j'ai essayé d'utiliser le strptime() fonction de datettime.

>>> datetime.datetime.strptime('Tue Jun 22 12:10:20 2010 EST', '%a %b %d %H:%M:%S %Y %Z')

Cependant, pour une raison quelconque, le datetime objet qui vient en arrière ne semble pas avoir tout tzinfo associés.

J'ai lu sur cette page qui, apparemment, datetime.strptime rejette tzinfo, cependant, j'ai vérifié la documentation, et je ne peux pas trouver quelque chose à cet effet documenté ici.

J'ai été en mesure d'obtenir la date analysée à l'aide d'un tiers bibliothèque Python, dateutil, mais je suis toujours curieux de savoir comment j'ai été en utilisant le construit strptime() de façon incorrecte? Est-il possible de l' strptime() de jouer gentiment avec les fuseaux horaires?

  • Ne pouvez-vous pas juste... convertir toutes les dates à l'heure GMT?
  • Hmm, je l'espérais, mais j'ai été en supposant que strftime/datetime pourrait en quelque sorte de le faire? De toute façon, j'ai besoin de stocker/analyser le fait que le datetimes sont dans l'est de fuseau horaire, ou quel que soit le fuseau horaire qu'ils m'arriver. Le script doit être en mesure d'analyser générique datetimes avec le fuseau horaire de l'info (par exemple, ETC pourrait être un autre fuseau horaire).
  • Est également un de NOUS l'abréviation du fuseau horaire. (De la même manière BST est à la fois un royaume-UNI et un Brésilien fuseau horaire abrév.) Ces abréviations sont juste intrinsèquement ambiguë. Utiliser les décalages par rapport à UTC/GMT à la place. (Si vous avez besoin de soutien abréviations, vous avez besoin de faire le mappage de paramètres régionaux dépendant et c'est le fouillis d'un rat-trou.)
  • HNE, l'abréviation du fuseau horaire est ambigu. Voir aussi: Analyse de chaîne de date/heure avec le fuseau horaire nom abrégé en Python?
InformationsquelleAutor victorhooi | 2010-07-22