1
resposta

[Sugestão] Resposta do desafio opcional

Lançamos o seguinte desafio: para ajudar na formatação de datas você deve criar uma nova classe auxiliar. Essa classe deve representar uma Data (sem hora) que sabe imprimir uma data formatada.

class Data:
    def __init__(self, dia = "27", mes = "02", ano = "2023"):
        self.dia = dia
        self.mes = mes
        self.ano = ano

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

Olá Bryan, tudo bem com você?

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

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 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, assim como os valores padrões passados no construtor devem ser do tipo int.

Deixo abaixo um exemplo de formatação:

def formatada(self):
    return print(f'{self.dia:02d}/{self.mes:02d}/{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 1/3/2023, seria preenchido com zeros a esquerda, como apresentado abaixo:

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

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

No python console

from datas import Data
obj_data = Data(1, 3, 2023)
obj_data.formatada()

Resultado

01/03/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!

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