¿Qué significan exactamente T y Z en la marca de tiempo?


99

Tengo este valor de marca de tiempo devuelto por un servicio web "2014-09-12T19:34:29Z"

Sé que significa zona horaria, pero ¿qué significa exactamente?

Y estoy tratando de burlarme de este servicio web, entonces, ¿hay alguna manera de generar esta marca de tiempo usando strftimeen Python?

Lo siento si esto es dolorosamente obvio, pero Google no fue muy útil y tampoco lo fue la strftime()página de referencia.

Actualmente estoy usando esto:

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

Respuestas:


128

La Trealidad no se destacan por nada. Es solo el separador que requiere el formato combinado de fecha y hora ISO 8601 . Puede leerlo como abreviatura de Time .

El Zrepresenta el cero zona horaria, ya que se compensa con 0 desde el Tiempo Universal Coordinado (UTC) .

Ambos caracteres son solo letras estáticas en el formato, por lo que el datetime.strftime()método no los documenta . Podría haber usado Qo Mo Monty Pythony el método también los habría devuelto sin cambios; el método solo busca patrones que comiencen con %para reemplazar aquellos con información del datetimeobjeto.


9
En Zrealidad, significa Zulu , que es el "nombre" de UTC0. Suena extraño, pero cada zona horaria tiene su nombre respectivo.
TomCho

19
@TomCho: no, Zulues el nombre del alfabeto fonético de la OTAN Zy se usa porque la zona horaria es la zona horaria cero. Vea el enlace de Wikipedia que incluí en la respuesta: la hora UTC también se conoce como hora "Zulú", ya que "Zulú" es la palabra en código del alfabeto ortográfico de la OACI para "Z".
Martijn Pieters

5
@TomCho: parece que TimeAndDate tiene eso al revés; Zvino antes Zulu, diría yo. en.wikipedia.org/wiki/List_of_military_time_zones es interesante pero no da ninguna justificación histórica para que Z se use para la zona horaria de compensación cero, solo que Zasí se nombra Zulu.
Martijn Pieters

1
+1 Es cierto, estoy de acuerdo contigo. Es extraño que no usen la letra Jen las zonas militares. ¿Quizás debido a la diferente pronunciación en modismos como el alemán o el finlandés? De todos modos gracias por aclarar las cosas.
TomCho

4
@TomCho: Zse usa para +0000(GMT en ese momento) desde la década de 1950 (incluso antes de que existiera UTC). Según tengo entendido, Zes solo una letra (puede usar un mnemónico Zero y / o pronunciarlo como Zulu(del alfabeto de ortografía ampliamente utilizado)
jfs
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.