Mit der Funktion utcnow () des datetime-Moduls kann die aktuelle UTC-Zeit abgerufen werden.
>>> import datetime
>>> utc_datetime = datetime.datetime.utcnow()
>>> utc_datetime.strftime("%Y-%m-%d %H:%M:%S")
'2010-02-01 06:59:19'
Wie der oben von Tom erwähnte Link: http://lucumr.pocoo.org/2011/7/15/eppur-si-muove/ sagt:
UTC ist eine Zeitzone ohne Sommerzeit und dennoch eine Zeitzone ohne Konfigurationsänderungen in der Vergangenheit.
Messen und speichern Sie die Zeit immer in UTC .
Wenn Sie aufzeichnen müssen, wo die Zeit genommen wurde, speichern Sie diese separat.
Speichern Sie nicht die Ortszeit + Zeitzoneninformationen!
HINWEIS - Wenn sich Ihre Daten in einer Region befinden, in der die Sommerzeit verwendet wird, verwenden Siepytz
die Antwort von John Millikin und sehen Sie sich diese an.
Wenn Sie die UTC-Zeit aus einer bestimmten Zeichenfolge abrufen möchten und das Glück haben, in einer Region auf der Welt zu sein, in der entweder keine Sommerzeit verwendet wird oder Daten nur von der UTC versetzt sind, ohne dass die Sommerzeit angewendet wird:
-> Ortszeit als Basis für den Offsetwert verwenden:
>>> # Obtain the UTC Offset for the current system:
>>> UTC_OFFSET_TIMEDELTA = datetime.datetime.utcnow() - datetime.datetime.now()
>>> local_datetime = datetime.datetime.strptime("2008-09-17 14:04:00", "%Y-%m-%d %H:%M:%S")
>>> result_utc_datetime = local_datetime + UTC_OFFSET_TIMEDELTA
>>> result_utc_datetime.strftime("%Y-%m-%d %H:%M:%S")
'2008-09-17 04:04:00'
-> Oder von einem bekannten Offset mit datetime.timedelta ():
>>> UTC_OFFSET = 10
>>> result_utc_datetime = local_datetime - datetime.timedelta(hours=UTC_OFFSET)
>>> result_utc_datetime.strftime("%Y-%m-%d %H:%M:%S")
'2008-09-17 04:04:00'
AKTUALISIEREN:
Da ist Python 3.2 datetime.timezone
verfügbar. Mit dem folgenden Befehl können Sie ein zeitzonenbewusstes Datum / Uhrzeit-Objekt generieren:
import datetime
timezone_aware_dt = datetime.datetime.now(datetime.timezone.utc)
Wenn Sie bereit sind, Zeitzonen-Konvertierungen vorzunehmen, lesen Sie Folgendes:
https://medium.com/@eleroy/10-things-you-need-to-know-about-date-and-time-in-python-with-datetime-pytz-dateutil-timedelta-309bfbafb3f7