Convertir fecha y hora en fecha en Python

Vaibhhav Khetarpal 30 enero 2023
  1. Utilice la función datetime.date() para convertir la fecha y la hora en fecha en Python
  2. Use Pandas para convertir DateTime a Date en Python
Convertir fecha y hora en fecha en Python

Python no contiene ningún tipo de datos incorporado específico para almacenar la fecha y la hora. Sin embargo, proporciona un módulo datetime que proporciona al usuario clases que alteran y manipulan la fecha y la hora en el código Python.

En este tutorial, aprenderemos las diferentes formas disponibles para convertir DateTime a la fecha en Python.

Antes de enumerar las diferentes formas de implementar este proceso, comprendamos la diferencia entre un objeto datetime y un objeto date.

Un objeto datetime es capaz de devolver la hora y la fecha. Por lo general, contiene una amplia variedad de valores, a saber, los valores de microsegundo, segundo, minuto, hora, día, mes y año. Por otro lado, un objeto del tipo date solo contiene la fecha.

Utilice la función datetime.date() para convertir la fecha y la hora en fecha en Python

El constructor datetime() se puede utilizar para generar una fecha.

El constructor datetime() tiene tres parámetros: día, mes y año.

Estos tres parámetros son necesarios para generar una fecha con el constructor.

El programador puede simplemente usar la función date() que devuelve un objeto del tipo date.

El siguiente código usa la función date() para convertir DateTime a la fecha en Python.

import datetime

print(datetime.datetime.now())
print(datetime.datetime.now().date())

Producción :

2021-10-17 21:27:46.018327
2021-10-17

Explicación

  • El módulo datetime se importa al código Python
  • La fecha y hora actuales se proporcionan como un objeto datetime mediante la función datetime.datetime.now().
  • La fecha actual como objeto del tipo date se proporciona con la ayuda de la función date() junto con la función datetime.datetime.now().

La función datetime.date.today() se puede utilizar cuando es necesario encontrar la fecha actual directamente. Sin embargo, esta alternativa no funciona si necesitamos algo más que la fecha actual.

El siguiente código utiliza la función datetime.date.today().

import datetime

print(datetime.datetime.now())
print(datetime.date.today())

Producción :

2021-10-17 21:27:46.018327
2021-10-17

Para este caso particular, ambos métodos proporcionan el mismo resultado ya que estamos trabajando en la fecha actual.

Use Pandas para convertir DateTime a Date en Python

Pandas DataFrame se puede utilizar para generar matrices que se adapten a los valores de fecha y hora.

Para usar pandas DataFrame y generar un array que contenga la columna time, necesitamos importar el módulo pandas.

El siguiente código usa pandas DataFrame para convertir DateTime a la fecha en Python.

import pandas as pd

dataf = pd.DataFrame(
    {"EMP": [3, 6], "time": ["2021-10-15 16:05:00", "2021-10-17 20:00:30"]}
)
print(dataf)
dataf["time"] = pd.to_datetime(dataf["time"]).dt.date
print(dataf)

Producción :

EMP                 time
0    3  2021-10-15 16:05:00
1    6  2021-10-17 20:00:30
EMP        time
0    3  2021-10-15
1    6  2021-10-17

Es claramente visible en el código anterior que después de la ejecución de la función dt.date, la columna de hora solo muestra la hora y la fecha.

Explicación

  • En primer lugar, creamos un Pandas DataFrame y agregamos los valores de DateTime en una columna.
  • Luego, la función dt.date() se utiliza para convertir el valor DateTime en un valor de fecha.
  • El comando print se utiliza para mostrar tanto el valor de la fecha como el valor de DateTime en la salida.
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