Was genau bedeuten T und Z im Zeitstempel?

92

Ich habe diesen Zeitstempelwert, der von einem Webdienst zurückgegeben wird "2014-09-12T19:34:29Z"

Ich weiß, dass es Zeitzone bedeutet, aber was genau bedeutet es?

Und ich versuche, diesen Webdienst zu verspotten. Gibt es also eine Möglichkeit, diesen Zeitstempel mit strftimePython zu generieren ?

Es tut uns leid, wenn dies schmerzlich offensichtlich ist, aber Google war nicht sehr hilfreich und die strftime()Referenzseite auch nicht.

Ich benutze derzeit Folgendes:

x.strftime("%Y-%m-%dT%H:%M:%S%Z")
'2015-03-26T10:58:51'
roymustang86
quelle

Antworten:

120

Das Tsteht eigentlich für nichts. Es ist nur das Trennzeichen , das das kombinierte Datums- und Uhrzeitformat nach ISO 8601 erfordert. Sie können es als Abkürzung für Time lesen .

Die Zsteht für die Zeitzone Null , da sie gegenüber der koordinierten Weltzeit (UTC) um 0 versetzt ist .

Beide Zeichen sind nur statische Buchstaben im Format, weshalb sie von der datetime.strftime()Methode nicht dokumentiert werden . Sie hätten Qoder Moder verwenden können, Monty Pythonund die Methode hätte sie auch unverändert zurückgegeben. Die Methode sucht nur nach Mustern %, die mit beginnen , um diese durch Informationen aus dem datetimeObjekt zu ersetzen .

Martijn Pieters
quelle
9
Das Zsteht eigentlich für Zulu , was der "Name" von UTC0 ist. Es klingt komisch, aber jede Zeitzone hat ihren jeweiligen Namen.
TomCho
19
@ TomCho: Nein, Zuluist der Name des phonetischen Alphabets der NATO für Zund wird verwendet, weil die Zeitzone die Zeitzone Null ist. Siehe den Wikipedia-Link, den ich in die Antwort aufgenommen habe: Die UTC-Zeit wird auch als "Zulu" -Zeit bezeichnet, da "Zulu" das ICAO-Rechtschreibalphabet für "Z" ist.
Martijn Pieters
5
@ TomCho: sieht so aus, als hätte TimeAndDate das rückwärts; Zkam vorher Zulu, würde ich sagen. en.wikipedia.org/wiki/List_of_military_time_zones ist interessant, gibt aber keine historische Rechtfertigung dafür, dass Z für die Null-Offset-Zeitzone verwendet wird, nur die Zso genannte Zulu.
Martijn Pieters
1
+1 Stimmt, ich stimme dir zu. Es ist seltsam, dass sie den Brief Jin den Militärzonen nicht verwenden . Vielleicht wegen der unterschiedlichen Aussprache in Redewendungen wie Deutsch oder Finnisch? Trotzdem danke, dass du die Dinge geklärt hast.
TomCho
4
@TomCho: Zwird +0000seit den 1950er Jahren für (zu der Zeit GMT) verwendet (bevor UTC überhaupt existierte). Soweit ich weiß , Zhandelt es sich nur um einen Buchstaben (Sie könnten eine Mnemonik verwenden Zero und / oder sie aussprechen als Zulu(aus dem weit verbreiteten Rechtschreibalphabet)
jfs