Ich versuche, eine Funktion zu schreiben, die eine Zeichenkette Datum/Uhrzeit von lokaler Zeit in UTC in Python konvertiert.Wie kann ich eine Datum/Uhrzeit-Zeichenfolge in lokaler Zeit in UTC in Python konvertieren?
Nach this question können Sie time.tzname
verwenden, um einige Formulare der lokalen Zeitzone zu erhalten, aber ich habe keine Möglichkeit gefunden, dies in keiner der Datetime-Konvertierungsmethoden zu verwenden. Zum Beispiel, this article zeigt, gibt es ein paar Dinge, die Sie tun können mit pytz
und datetime
um Zeiten zu konvertieren, aber alle von ihnen haben Zeitzonen, die fest codiert sind und von anderen Formaten als was time.tzname
zurückgibt.
Zur Zeit habe ich den folgenden Code einen String formatiert Zeit in Millisekunden (Unix-Epoche), zu übersetzen:
local_time = time.strptime(datetime_str, "%m/%d/%Y %H:%M:%S") # expects UTC, but I want this to be local
dt = datetime.datetime(*local_time[:6])
ms = int((dt - datetime.datetime.utcfromtimestamp(0)).total_seconds() * 1000)
Dies ist jedoch die Zeit erwartet Eingabe als UTC zu sein. Gibt es eine Möglichkeit, die string-formatierte Zeit so zu konvertieren, als wäre sie in der lokalen Zeitzone? Vielen Dank.
Im Wesentlichen möchte ich in der Lage sein zu tun, was this answer tut, aber anstatt hart in "America/Los_Angeles" Codierung, möchte ich in der Lage sein, die lokale Zeitzone dynamisch anzugeben.
von Zeit Import gmtime, Strftime LocTime = strftime ("% a,% d% b% Y% H:% M:% S ") GMTime = strftime ("% Y% m% TT% H:% M:% S (GMT) ", gmtime()) print" Lokal: ", LocTime print" UTC: ", GMTime –
Sie möchten von der lokalen Zeit 2 utc konvertieren? –
Sie können Zeitzone mit bekommen: tz = strftime ("% Z") –