Python ofrece diferentes paquetes ( datetime
, time
, calendar
) como se puede ver aquí con el fin de hacer frente a tiempo. Cometí un gran error al usar lo siguiente para obtener el tiempo GMT actualtime.mktime(datetime.datetime.utcnow().timetuple())
¿Cuál es una manera simple de obtener la hora GMT actual en la marca de tiempo de Unix?
python
time
unix-timestamp
Cory
fuente
fuente
datetime.utcnow()
devuelve la hora UTC actual como objeto de fecha y hora (supongo que desea UTC cuando habla de "hora GMT").time.time()
devuelve la marca de tiempo de Unix directamente como número flotante. Aquí le mostramos cómo convertir datetime.date/datetime.datetime que representa la hora en UTC a la marca de tiempo POSIX .Respuestas:
Usaría time.time () para obtener una marca de tiempo en segundos desde la época.
Salida:
Para la implementación estándar de CPython en la mayoría de las plataformas, esto devolverá un valor UTC.
fuente
Salida:
fuente
¿Esto ayuda?
Cómo convertir el objeto de fecha y hora UTC de Python a la marca de tiempo de UNIX
fuente
time.time()
y no necesita ninguna conversión de fecha y hora.O simplemente usando el módulo estándar de fecha y hora
Puede truncar o multiplicar según la resolución que desee. Este ejemplo está generando millis.
Si desea una marca de tiempo Unix adecuada (en segundos), elimine el
* 1000
fuente
moment
biblioteca Javascriptmoment().utc().valueOf()
. Exactamente lo que estaba buscando. Graciaspython2 y python3
es bueno usar el módulo de tiempo
también puede usar el módulo de fecha y hora, pero cuando usa strftime ('% s'), ¡pero el tiempo de conversión convierte el tiempo de strft a su hora local!
python2
python3
fuente
time.time()
ydatetime.utcnow().timestamp()
no , no dará el mismo valor!Me gusta este metodo:
No se garantiza que los otros métodos publicados aquí le brinden UTC en todas las plataformas o solo informen segundos completos. Si desea una resolución completa, esto funciona, al microsegundo.
fuente
utctimetuple
embargo, el uso hace el truco.Salida:
fuente
time.time()
para mí.dt.utcnow
devuelve unadatetime
información sin zona horaria. Luegostrftime
asume quedatetime
es la hora local.fuente
Al menos en python3, esto funciona:
fuente