Oii Bruno, como você está?
Seu código está correto. Tenho apenas uma ressalva:
- Você validou o dia para ser acrescentado o valor 0 caso o número seja menor que 10. Porém, não fez o mesmo para o mês. E sendo assim, podemos ter casos como o mostrado abaixo:
>> Digite a data de nascimento: 2/4/2020
>> 02/4/2020
Observe que o mês não foi acrescido de um zero a esquerda para números menores que 10, mas seria interessante colocar.
Uma maneira simples de validarmos todas as formatações de 0 a esquerda, é utilizarmos as especificações de formato de uma string.
Veja como fica em código:
def imprime_data(self):
print(f'{self.__dia:02d}/{self.__mes:02d}/{self.__ano:04d}')
No código acima, 02d
formata um número inteiro(d
) para um campo de largura mínima 2 (2
), com preenchimento de zero à esquerda (0
). E mesma ideia se repete para o 04d
no campo de ano.
Mais detalhes e curiosidades sobre esse tipo de formatação você pode conferir neste link da documentação do Python.
Vale ressaltar também que quanto mais contato você for tendo com a linguagem, a tendência é que utilize a biblioteca Datetime para datas, mas isso é assunto para os próximos capítulos hahaha
Qualquer dúvida estou por aqui, tá bom?
Abraços e bons estudos!