Calculando novas datas a partir de uma data base com Python

Você tem uma mensalidade que vence no dia 05 e quer gerar as datas para ela durante os próximos 12 meses. Neste caso, você precisa se preocupar com quantos dias tem um mês (28, 30, 31) e considerar isso nos seus calculos, certo?

Claro, mas o Python resolve isso para você.

Para este post, você vai precisar do pacote python-dateutil. Se precisar instalar este pacote, utilize o PIP com o comando abaixo:

pip install python-dateutil

Tanto no Linux quanto no Windows, você (certamente) precisará de privilégios de administrador/root para executar este comando. No Linux, se estiver utilizando Python 3, altere o comando de pip pra pip3. (Não tem pip3 instalado? utilize o comando apt-get install pip3 para baixá-lo!)

No seu arquivo .py, faça as seguintes importações:

from datetime import datetime
from dateutil.parser import parse

 

Primeiro, vamos definir uma data base, ou seja, a partir dela vamos adicionar 1 mes.

#Base date
base_date = datetime(2018,1,31,10,11,12)

 

Nossa data base será 31/01/2018. Agora vamos acrescentar 1 mes a esta data:

#Add 1 month
new_date = base_date + relativedelta(months=+1)

Este comando fará com que a variável new_date possua o valor 28/02/2018.

Pronto! Está feito. Você também pode adicionar dias (exemplo: data daqui a 73 dias), utilizando o argumento days=n, onde n é o número de dias.

 

Se quiser, o fonte deste post está no Github!

 

Espero ter ajudado.

 

The following two tabs change content below.
Arquiteto de Software e Desenvolvedor Backend (quase Fullstack), geralmente trabalho com C#, PowerShell, Python, Golang, bash e Unity (esse é mais por hobby). Estou sempre buscando algo novo para aprender, adicionando novas ferramentas ao meu cinto de utilidades.
Posted in Dev, Python and tagged , , , , , , .