Converter data e hora em data em Python
-
Use a função
datetime.date()
para converter Datetime to Date em Python - Use o Pandas para converter DateTime em Date em Python
Python não contém nenhum tipo específico de dados embutido para armazenar data e hora. No entanto, ele fornece um módulo datetime
que fornece ao usuário classes que alteram e manipulam a data e a hora no código Python.
Neste tutorial, aprenderemos as diferentes maneiras disponíveis para converter DateTime em data em Python.
Antes de listar as diferentes formas de implementação deste processo, vamos entender a diferença entre um objeto datetime
e um objeto date
.
Um objeto datetime
é capaz de retornar a hora e a data. Normalmente, ele contém uma grande variedade de valores, a saber, os valores de microssegundo, segundo, minuto, hora, dia, mês e ano. Por outro lado, um objeto do tipo date
contém apenas a data.
Use a função datetime.date()
para converter Datetime to Date em Python
O construtor datetime()
pode ser utilizado para gerar uma data.
O construtor datetime()
tem três parâmetros: dia, mês e ano.
Esses três parâmetros são necessários para gerar uma data com o construtor.
O programador pode simplesmente usar a função date()
que retorna um objeto do tipo date
.
O código a seguir usa a função date()
para converter DateTime em data em Python.
import datetime
print(datetime.datetime.now())
print(datetime.datetime.now().date())
Resultado:
2021-10-17 21:27:46.018327
2021-10-17
Explicação
- O módulo
datetime
é importado para o código Python - A data e hora atuais são fornecidas como um objeto
datetime
pela funçãodatetime.datetime.now()
. - A data atual como um objeto do tipo
date
é fornecida com a ajuda da funçãodate()
junto com a funçãodatetime.datetime.now()
.
A função datetime.date.today()
pode ser utilizada quando houver necessidade de encontrar a data atual diretamente. No entanto, esta alternativa não funciona se precisarmos de mais alguma coisa, exceto a data atual.
O código a seguir usa a função datetime.date.today()
.
import datetime
print(datetime.datetime.now())
print(datetime.date.today())
Resultado:
2021-10-17 21:27:46.018327
2021-10-17
Para este caso específico, ambos os métodos fornecem a mesma saída, pois estamos trabalhando na data atual.
Use o Pandas para converter DateTime em Date em Python
O Pandas DataFrame
pode ser utilizado para gerar matrizes que acomodam os valores de hora e data.
Para usar o pandas DataFrame
e gerar um array contendo a coluna time
, precisamos importar o módulo pandas
.
O código a seguir usa o pandas DataFrame
para converter DateTime em data em 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)
Resultado:
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
É claramente visível no código acima que após a execução da função dt.date
, a coluna da hora exibe apenas a hora e a data.
Explicação
- Em primeiro lugar, criamos um pandas
DataFrame
e adicionamos os valores DateTime em uma coluna. - Então, a função
dt.date()
é utilizada para converter o valor DateTime em um valor de data. - O comando
print
é utilizado para exibir o valor da data e o valor DateTime na saída.
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