Olá João, tudo bem com você?
Meus parabéns pela criação do código e por está compartilhando com a comunidade do fórum Alura.
Vi que você implementou o código para conferir como foi informado o valor do dia e do mês, completando com zero (0) antes dos números menores que 10, para conhecimento, deixo abaixo uma outra forma que podemos realizar essa formatação.
Podemos implementar a função formatar_data(self)
com a manipulação dos valores do dia e mês para que sejam fornecidos em um padrão determinado, para isso devemos inserir nas data valores do tipo int
, deixo abaixo um exemplo:
def formatar_data(self):
print(f"{self.dia:02d} / {self.mes:02d} / {self.ano}")
No exemplo acima :02d
formata um inteiro (d) para um campo de largura mínima 2 (2), com preenchimento de zero à esquerda, quando a largura mínima de dois caracteres não for atendida. Então, caso passássemos a data 2/4/2022, seria preenchido com zeros a esquerda, como mostro abaixo:
class Datas:
def __init__(self, dia, mes, ano):
self.dia = int(dia)
self.mes = int(mes)
self.ano = int(ano)
def formatar_data(self):
print(f"{self.dia:02d} / {self.mes:02d} / {self.ano}")
d = Datas(2, 4, 2022)
d.formatar_data()
# Resultado
02/04/2022
Para saber um pouco mais sobre a formatação de string recomendo esse artigo Anatomy of String Formatting in Python em português: Anatomia da string - formatando em Python. Caso tenha dificuldades com o idioma, recomendo que use o tradutor que existe no navegador.
Coloco-me à disposição em caso de dúvidas.
Abraços e bons estudos.