Python: Aprenda a Manipular Datas com Facilidade
Manipulando datas com Python facilmente.
Glossário
Manipulando datas com Python facilmente
Trabalhando com o módulo datetime
Trabalhar com datas é uma tarefa comum em muitos projetos de programação. Em Python, felizmente, temos o módulo datetime, que nos oferece uma variedade de funções e métodos para manipular datas com facilidade. Neste artigo, vamos explorar como utilizar o módulo datetime para realizar operações com datas de forma simples e eficiente.
Criando objetos de data
Uma das primeiras coisas que podemos fazer com o módulo datetime é criar objetos de data. Podemos utilizar a classe date para representar uma data específica, informando o ano, o mês e o dia. Por exemplo, podemos criar um objeto de data para representar o dia de hoje da seguinte forma:
from datetime import date
hoje = date.today()
print(hoje)
Ao executar esse código, teremos como resultado a data atual no formato “ano-mês-dia”. Podemos acessar os componentes individuais da data utilizando os atributos year
, month
e day
. Por exemplo, hoje.year
nos dá o ano atual.
Realizando cálculos com datas
Outra funcionalidade interessante do módulo datetime é a capacidade de realizar cálculos com datas. Podemos calcular a diferença entre duas datas utilizando a função timedelta
. Por exemplo, se quisermos calcular a diferença entre duas datas, podemos fazer o seguinte:
from datetime import date, timedelta
data1 = date(2022, 1, 1)
data2 = date(2022, 2, 1)
diferenca = data2 - data1
print(diferenca.days)
Nesse exemplo, estamos calculando a diferença em dias entre as datas data1
e data2
. A função timedelta
retorna um objeto que representa a diferença entre as duas datas, e o atributo days
nos dá o número de dias dessa diferença.
Formatando datas
Além disso, o módulo datetime também nos permite formatar datas de acordo com as nossas necessidades. Podemos utilizar o método strftime
para formatar uma data em uma string com o formato desejado. Por exemplo:
from datetime import date
hoje = date.today()
data_formatada = hoje.strftime("%d/%m/%Y")
print(data_formatada)
Nesse exemplo, estamos formatando a data atual no formato “dia/mês/ano”. O método strftime
recebe como argumento uma string que define o formato da data desejado.
Entendendo o módulo datetime em Python
O módulo datetime é uma parte fundamental da biblioteca padrão do Python e fornece classes e funções para manipular datas e horários. Ele nos permite realizar diversas operações, como criar objetos de data, realizar cálculos com datas, formatar datas e muito mais.
A classe date
Uma das principais classes do módulo datetime é a classe date. Essa classe nos permite representar uma data específica, informando o ano, o mês e o dia. Podemos criar objetos de data utilizando o construtor da classe date
. Por exemplo:



from datetime import date
data = date(2022, 1, 1)
print(data)
Nesse exemplo, estamos criando um objeto de data para representar o dia 1 de janeiro de 2022. Ao imprimir o objeto data
, teremos como resultado a data no formato “ano-mês-dia”.
A classe timedelta
Outra classe importante do módulo datetime é a classe timedelta. Essa classe nos permite representar uma diferença entre duas datas ou horários. Podemos criar objetos timedelta utilizando o construtor da classe timedelta
. Por exemplo:
from datetime import timedelta
diferenca = timedelta(days=7)
print(diferenca)
Nesse exemplo, estamos criando um objeto timedelta que representa uma diferença de 7 dias. Ao imprimir o objeto diferenca
, teremos como resultado “7 days, 0:00:00”, indicando que a diferença é de 7 dias.
O método strftime
Além disso, o módulo datetime também nos oferece o método strftime
, que nos permite formatar uma data ou horário de acordo com um formato específico. Podemos utilizar uma série de códigos de formatação para definir o formato desejado. Por exemplo:
from datetime import datetime
agora = datetime.now()
data_formatada = agora.strftime("%d/%m/%Y %H:%M:%S")
print(data_formatada)
Nesse exemplo, estamos formatando a data e o horário atual no formato “dia/mês/ano hora:minuto:segundo”. O método strftime
nos retorna uma string com a data e o horário formatados de acordo com o formato especificado.
Trabalhando com operações avançadas de datas em Python
Além das operações básicas de manipulação de datas, o módulo datetime em Python também oferece funcionalidades avançadas para trabalhar com datas. Podemos realizar operações como adicionar ou subtrair dias, meses, anos, horas, minutos e segundos a uma data existente.
Podemos utilizar o método timedelta
juntamente com os operadores aritméticos para realizar essas operações. Por exemplo:
from datetime import date, timedelta
data = date(2022, 1, 1)
dias_depois = data + timedelta(days=7)
meses_depois = data + timedelta(months=1)
anos_depois = data + timedelta(years=1)
Nesse exemplo, estamos adicionando 7 dias, 1 mês e 1 ano à data inicial. O resultado das operações será uma nova data que representa a data original mais o intervalo especificado.
Além disso, o módulo datetime também nos permite comparar datas utilizando os operadores de comparação. Por exemplo:
from datetime import date
data1 = date(2022, 1, 1)
data2 = date(2022, 2, 1)
if data1 < data2:
print("data1 é anterior a data2")
Nesse exemplo, estamos comparando as datas data1
e data2
utilizando o operador de comparação <
. Se a condição for verdadeira, ou seja, se data1
for anterior a data2
, o código dentro do bloco if
será executado.
Em resumo, o módulo datetime em Python é uma ferramenta poderosa para manipular datas com facilidade. Com ele, podemos criar objetos de data, realizar cálculos com datas, formatar datas de acordo com o nosso desejo e realizar operações avançadas com datas. Aprender a utilizar esse módulo é fundamental para quem trabalha com programação em Python e precisa lidar com datas em seus projetos.
Como formatar datas em Python de maneira simples
Quando trabalhamos com datas em Python, muitas vezes precisamos formatá-las de acordo com um padrão específico. Felizmente, o módulo datetime nos oferece o método strftime()
para realizar essa formatação de maneira simples e eficiente.
O método strftime()
nos permite especificar um formato desejado para a data e obter uma string formatada como resultado. Podemos utilizar uma série de códigos de formatação para definir o formato que desejamos. Alguns dos códigos de formatação mais comuns incluem:
%Y
: representa o ano com 4 dígitos%m
: representa o mês com 2 dígitos%d
: representa o dia com 2 dígitos%H
: representa a hora em formato de 24 horas com 2 dígitos%M
: representa o minuto com 2 dígitos%S
: representa o segundo com 2 dígitos
Por exemplo, se quisermos formatar uma data no formato "dia/mês/ano", podemos utilizar o seguinte código:



from datetime import datetime
data = datetime.now()
data_formatada = data.strftime("%d/%m/%Y")
print(data_formatada)
Ao executar esse código, teremos como resultado a data atual no formato desejado. Podemos combinar os diferentes códigos de formatação para obter o formato desejado para a nossa data.
Além disso, o método strftime()
também nos permite formatar datas em outros idiomas. Por exemplo, se quisermos formatar a data no formato "dia de mês de ano" em português, podemos utilizar o seguinte código:
from datetime import datetime
import locale
locale.setlocale(locale.LC_ALL, 'pt_BR.utf8')
data = datetime.now()
data_formatada = data.strftime("%d de %B de %Y")
print(data_formatada)
Nesse exemplo, estamos utilizando a função setlocale()
para definir o idioma como português do Brasil. Em seguida, utilizamos o código de formatação %B
para representar o mês por extenso em português.
Trabalhando com operações avançadas de datas em Python
Além das operações básicas de manipulação de datas, o módulo datetime em Python também nos oferece funcionalidades avançadas para trabalhar com datas. Podemos realizar operações como adicionar ou subtrair dias, meses, anos, horas, minutos e segundos a uma data existente.
Podemos utilizar o método timedelta
juntamente com os operadores aritméticos para realizar essas operações. Por exemplo, se quisermos adicionar 7 dias a uma data, podemos fazer o seguinte:
from datetime import date, timedelta
data = date(2022, 1, 1)
data_nova = data + timedelta(days=7)
print(data_nova)
Nesse exemplo, estamos adicionando 7 dias à data inicial. O resultado será uma nova data que representa a data original mais o intervalo especificado.
Além disso, também podemos realizar operações de comparação entre datas. Podemos utilizar os operadores de comparação, como <
, >
, <=
e >=
, para comparar duas datas. Por exemplo:
from datetime import date
data1 = date(2022, 1, 1)
data2 = date(2022, 2, 1)
if data1 < data2:
print("A data1 é anterior à data2")
Nesse exemplo, estamos comparando as datas data1
e data2
utilizando o operador <
. Se a condição for verdadeira, ou seja, se data1
for anterior a data2
, o código dentro do bloco if
será executado.
Além das operações de adição e comparação, o módulo datetime também nos permite extrair componentes individuais de uma data, como o ano, o mês e o dia. Podemos utilizar os atributos year
, month
e day
para obter esses componentes. Por exemplo:
from datetime import date
data = date(2022, 1, 1)
ano = data.year
mes = data.month
dia = data.day
print(ano, mes, dia)
Nesse exemplo, estamos obtendo o ano, o mês e o dia da data e imprimindo esses valores.
A Awari é a melhor plataforma para aprender sobre ciência de dados no Brasil.
Aqui você encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu próximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.
Já pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? Clique aqui para se inscrever na Awari e começar a construir agora mesmo o próximo capítulo da sua carreira em dados.


