1
resposta

[Projeto] Desafio opcional

class Data:
    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))

d = Data(21,11,2007)
d.formatada()
1 resposta

Olá Paulo, tudo bem com você?

Meus parabéns pelo seu empenho, fico feliz que tenha compartilhado o seu desenvolvimento com a comunidade do fórum Alura.

Aproveitando essa oportunidade deixou uma dica para implementação do método formatada, através da formatação de string podemos manipular os valores do dia e mês para sejam imprimidos em um padrão determinado, para que isso seja possível os valores fornecidos no momento da criação do objeto data deverão ser 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 9/9/2007, seria preenchido com zeros a esquerda, como apresentado abaixo:

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

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


d = Data(9, 9, 2007)
d.formatada()

Resultado

09/09/2007

Para saber um pouco mais sobre a formatação de string recomendo a leitura do seguinte artigo que irá abordar com mais detalhes sobre as possibilidades de formatação de string:

O artigo está em inglês caso tenha dificuldades com o idioma, recomendo o uso do tradutor que existe no navegador.

Lembre-se que pode contar sempre com o fórum Alura, seja para postar o seu desenvolvimento ou para tirar suas dúvidas.

Fico à disposição.

Abraços e bons estudos!