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

[Projeto] Desafio opcional

Segue minha resolução para o desafio opcional.

class Data:

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

    def formatada(self):
        print(f"{self.dia}/{self.mes}/{self.ano}")


2 respostas
solução!

Olá Matheus, 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 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.

Deixo abaixo um exemplo de formatação:

def formatada(self):
    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 9/6/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 formatada(self):
        print(f"{self.dia:02d}/{self.mes:02d}/{self.ano}")

No python console

from data import Data
obj_data = Data(9, 6, 2023)
obj_data.formatada()

Resultado

09/06/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:

Observação: O conteúdo recomendado está em inglês, comum na área da tecnologia, utilize o tradutor para melhor compreensã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!

montei com a parte do print um pouco diferente

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))