Python convertir fecha y hora en época

Vaibhhav Khetarpal 30 enero 2023
  1. Utilice el método explícito para convertir la fecha y la hora en Epoch en Python
  2. Utilice la función timestamp() para convertir la fecha y la hora en Epoch en Python
  3. Utilice la función strftime(format) para convertir la fecha y la hora en Epoch en Python
  4. Utilice la función timegm para convertir DateTime a Epoch en Python
Python convertir fecha y hora en época

La biblioteca datetime se puede importar a un programa Python. Proporciona clases que se utilizan para manipular la fecha y la hora en el código Python.

época es el punto de partida para medir el tiempo transcurrido, y su valor suele variar y depende de la plataforma que se utilice.

Este tutorial discutirá diferentes métodos para convertir fecha y hora en época en Python.

Utilice el método explícito para convertir la fecha y la hora en Epoch en Python

En este método, tomamos la fecha actual y la restamos manualmente de la fecha de inicio y luego la convertimos en segundos usando la función total_seconds() y mostrándola.

La fecha inicial aquí es 1970/1/1.

El siguiente código usa el método explícito para convertir la fecha y la hora en una época en Python.

import datetime

ts = (
    datetime.datetime(2019, 12, 1, 0, 0) - datetime.datetime(1970, 1, 1)
).total_seconds()
print(ts)

Producción :

1575158400.0

Utilice la función timestamp() para convertir la fecha y la hora en Epoch en Python

Una marca de tiempo es una serie de caracteres que dicta el valor de cuándo ocurrió un evento en particular.

Python proporciona una función timestamp(), que se puede usar para obtener la fecha y hora desde epoch.

El siguiente código usa la función timestamp() para convertir la fecha y la hora en una época en Python.

import datetime

ts = datetime.datetime(2019, 12, 1, 0, 0).timestamp()
print(ts)

Producción :

1575158400.0

Este es un método bastante fácil y nos proporciona resultados precisos.

Tenga en cuenta que la función timestamp() solo funciona en Python 3.3+ y no es aplicable para su uso en las versiones anteriores de Python.

Utilice la función strftime(format) para convertir la fecha y la hora en Epoch en Python

El método strftime(format) se utiliza para convertir un objeto en una cadena según el formato especificado por el usuario.

Para el reverso de este proceso, se utiliza el método strptime().

El siguiente código usa el método strftime(format) para convertir la fecha y la hora en una época en Python.

import datetime

ts = datetime.datetime(2019, 12, 1, 0, 0).strftime("%s")
print(ts)

Producción :

1575158400

Es posible que strftime(format) no siempre proporcione la solución correcta. Este método usa la directiva %s como argumento de strftime, que Python no es compatible. Podría funcionar porque Python reenvía %s al método strftime del sistema.

Este método no es el método más preciso para la conversión de fecha y hora en época. No se recomienda utilizar este método simplemente porque existen métodos mejores y más precisos.

Utilice la función timegm para convertir DateTime a Epoch en Python

La función timegm() toma un valor de tiempo específico y devuelve su correspondiente valor de marca de tiempo Unix. Se toma la época como 1970 y se asume la codificación POSIX. Las funciones time.gmtime() y timegm() son inversas entre sí.

Las bibliotecas calendar y time deben ser importadas al programa de Python para utilizar estas funciones.

El módulo calendar nos proporciona la capacidad de generar calendarios y algunas funciones adicionales y útiles relacionadas con él.

El siguiente código utiliza la función timegm() para convertir la fecha y hora en época.

import datetime
import calendar

d = datetime.datetime(2019, 12, 1, 0, 0)
print(calendar.timegm(d.timetuple()))

Producción :

1575158400
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Artículo relacionado - Python DateTime