Opción: isoformat()
Python datetime
no admite los sufijos de zona horaria militar como el sufijo 'Z' para UTC. El siguiente reemplazo de cadena simple hace el truco:
In [1]: import datetime
In [2]: d = datetime.datetime(2014, 12, 10, 12, 0, 0)
In [3]: str(d).replace('+00:00', 'Z')
Out[3]: '2014-12-10 12:00:00Z'
str(d)
es esencialmente lo mismo que d.isoformat(sep=' ')
Ver: Fecha y hora, Biblioteca estándar de Python
Opción: strftime()
O podría usar strftime
para lograr el mismo efecto:
In [4]: d.strftime('%Y-%m-%d %H:%M:%SZ')
Out[4]: '2014-12-10 12:00:00Z'
Nota: Esta opción solo funciona cuando sabe que la fecha especificada está en UTC.
Ver: datetime.strftime ()
Adicional: Zona horaria legible por humanos
Yendo más allá, es posible que le interese mostrar información de zona horaria legible por humanos, pytz
con la strftime
%Z
bandera de zona horaria:
In [5]: import pytz
In [6]: d = datetime.datetime(2014, 12, 10, 12, 0, 0, tzinfo=pytz.utc)
In [7]: d
Out[7]: datetime.datetime(2014, 12, 10, 12, 0, tzinfo=<UTC>)
In [8]: d.strftime('%Y-%m-%d %H:%M:%S %Z')
Out[8]: '2014-12-10 12:00:00 UTC'