Olá André, tudo bem com você?
Meus parabéns pela implementação do código e por compartilhar com a comunidade do fórum.
Uma outra forma que podemos tratar os números menores que 10 conforme explico abaixo:
Podemos implementar a função formatadata(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 formatada(self):
print("{:02d}/{:02d}/{}".format(self.dia, self.mes, 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 Data:
def __init__(self, dia, mes, ano):
self.dia = dia
self.mes = mes
self.ano = ano
print("Definindo Data")
def formatada(self):
print("{:02d}/{:02d}/{}".format(self.dia, self.mes, self.ano))
d = Data(2, 4, 2022)
d.formatada()
# 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.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!