1
resposta

Resolução do desafio

Olá, essa é minha resolução do desafio da data, não sei se entendi bem como o instrutor queria o desafio então peço que caso seja de outra forma me avisem, mas é isso ai gente.

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

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

Olá Leonardo, tudo bem com você?

Meus parabéns pelo seu empenho. Seu código atende bem o esperado no desafio. Fico feliz que tenha compartilhado a resolução do desafio com a comunidade do fórum Alura, ele atende bem o proposto.

Aproveitando essa oportunidade deixou uma dica para implementação do método imprime_data, através da formatação de string podemos manipular os valores do dia e mês para serem impressos em um padrão determinado. Importante: para que essa implementação seja possível, os valores fornecidos no momento da criação do objeto da classe Data deverão ser do tipo int.

Deixo abaixo um exemplo de formatação:

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

No exemplo acima, o :02d adicionado entre as chaves { } 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/5/2023, 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 imprime_data(self):
        print("{:02d}/{:02d}/{}".format(self.dia,self.mes,self.ano))

No python console

from datas import Data
obj_data = Data(2, 5, 2023)
obj_data.imprime_data()

Resultado

02/05/2023

Para conhecer 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 conteúdo recomendado acima está em inglês, o uso da língua inglesa é bem comum na área de tecnologia, mas não se preocupe, caso não tenha afinidade com essa linguagem, recomendo que utilize o tradutor do navegador para uma melhor compressão.

Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Fico à disposição.

Abraços e bons estudos!

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