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.
Latest posts by Breno RdV (see all)
- O que é Metaclass e como ela funciona. (#python #dev #metaclass) - janeiro 11, 2023
- Entenda a mágica dos Generators. (#python, #dev, #generator, #iterator) - dezembro 28, 2022
- Ordenando um DataFrame por múltiplas colunas. (#python #pandas #jupyter #dev #data) - agosto 3, 2022