1
resposta

Desafio opcional

class Datas:

def __init__(self, dia, mes, ano):
    self.dia = dia
    self.mes = mes
    self.ano = ano


def formatada(self):
    print('{}/{}/{}'. format(self.dia, self.mes, self.ano))
1 resposta

Oii Rafael! Tudo bem contigo?

Mandou bem! É essa mesmo a ideia. Parabéns pela resolução do desafio :)

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 = Datas(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.

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software