O que exatamente significa T e Z em carimbo de data / hora?

101

Eu tenho esse valor de carimbo de data / hora sendo retornado por um serviço da web "2014-09-12T19:34:29Z"

Eu sei que isso significa fuso horário, mas o que exatamente significa?

E estou tentando simular este serviço da web, então há uma maneira de gerar esse carimbo de data / hora usando strftimeem python?

Desculpe se isso é dolorosamente óbvio, mas o Google não foi muito útil e nem a strftime()página de referência.

Atualmente estou usando este:

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

Respostas:

134

O Trealmente não representa nada. É apenas o separador que o formato combinado de data e hora ISO 8601 exige. Você pode ler como uma abreviatura de Time .

O Zrepresenta o fuso horário Zero , uma vez que é compensado por 0 do Tempo Universal Coordenado (UTC) .

Ambos os caracteres são apenas letras estáticas no formato, por isso não são documentados pelo datetime.strftime()método. Você poderia ter usado Qou Mou Monty Pythone o método também os teria retornado inalterados; o método procura apenas padrões começando com %para substituir aqueles com informações do datetimeobjeto.

Martijn Pieters
fonte
9
Na Zverdade, significa Zulu , que é o "nome" de UTC0. Parece estranho, mas cada fuso horário tem seu respectivo nome.
TomCho
20
@TomCho: não, Zulué o nome do alfabeto fonético da OTAN para Z, e é usado porque o fuso horário é zero. Veja o link da Wikipedia que incluí na resposta: o horário UTC também é conhecido como horário "Zulu", já que "Zulu" é a palavra de código alfabético da ICAO para "Z".
Martijn Pieters
5
@TomCho: parece que TimeAndDate está invertido; Zveio antes Zulu, eu diria. en.wikipedia.org/wiki/List_of_military_time_zones é interessante, mas não dá nenhuma justificativa histórica para Z sendo usado para o fuso horário de deslocamento zero, apenas que Zé assim nomeado Zulu.
Martijn Pieters
1
+1 Verdade, eu concordo com você. É estranho que não usem a letra Jnas zonas militares. Talvez por causa da pronúncia diferente em idiomas como alemão ou finlandês? De qualquer forma, obrigado por esclarecer as coisas.
TomCho
5
@TomCho: Zé usado para +0000(GMT na época) desde 1950 (antes mesmo de UTC existir). Pelo que entendi, Zé apenas uma letra (você pode usar um mnemônico Zero e / ou pronunciá-lo como Zulu(do alfabeto ortográfico amplamente usado)
jfs