Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Desafio opcional (OO)

class Data:
        def __init__(self, dia, mes , ano)
                print("Construindo o objeto...{}".format(self))
                self.dia = dia
                self.mes = mes
                self.ano = ano


        def formatada(self):
            print("{}/{}/{}".format(self.dia, self.mes, self.ano))
2 respostas
solução!

Oii Sandro, tudo tranquilo?

Excelente resposta! A ideia é essa mesmo :)

Vou passar apenas algumas pequenas dicas que podem te ajudar a deixar sua função formatada ainda melhor :)

Seria interessante também, acrescentar uma formatação para mostrar os zeros à esquerda dos números que possuem apenas um dígito. Assim:

def formatada(self):
        print("{:02d}/{:02d}/{}".format(self.dia, self.mes, self.ano))

Dessa forma, se o usuário criar o seguinte objeto:

data1 = Data(3,5,2000)
data1.formatada()

Ele terá como resultado: 03/05/2000 com os zeros antes dos números de apenas um dígito.

Para deixar seu print ainda menor, podemos utilizar o método de formatação mais novo da linguagem Python, o f-strings:

def formatada (self):
    print(f'{self.dia:02d}/{self.mes:02d}/{self.ano}')

Esse código funciona da mesma forma que utilizando o método format. A diferença é que ele é mais novo e deixa seu código um pouco menor :)

Espero que tenha ajudado. Qualquer dúvida estou à disposição.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Obrigado pelas dicas Millena, vou ajustar meu código.