parse convertir python datetime posix

python - convertir - Conversión de fecha y hora a hora POSIX



strftime python (4)

import time, datetime d = datetime.datetime.now() print time.mktime(d.timetuple())

¿Cómo convierto un objeto datetime o date en una marca de tiempo POSIX en python? Existen métodos para crear un objeto datetime a partir de una marca de tiempo, pero no parece encontrar ninguna forma obvia de hacer la operación de la manera opuesta.


Para cálculos UTC, calendar.timegm es el inverso de time.gmtime .

import calendar, datetime d = datetime.datetime.utcnow() print calendar.timegm(d.timetuple())


En python, time.time () puede devolver segundos como un número de coma flotante que incluye un componente decimal con los microsegundos. Para convertir una fecha y hora a esta representación, debe agregar el componente microsegundos porque el timetuple directo no lo incluye.

import time, datetime posix_now = time.time() d = datetime.datetime.fromtimestamp(posix_now) no_microseconds_time = time.mktime(d.timetuple()) has_microseconds_time = time.mktime(d.timetuple()) + d.microsecond * 0.000001 print posix_now print no_microseconds_time print has_microseconds_time


Tenga en cuenta que Python ahora (3.5.2) incluye un método incorporado para esto en los objetos datetime :

>>> import datetime >>> now = datetime.datetime.now() >>> now.timestamp() # Local time 1509315202.161655 >>> now.replace(tzinfo=datetime.timezone.utc).timestamp() # UTC 1509329602.161655