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))
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))
Olá Manoel, 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('{: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 4/4/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('{:02d}/{:02d}/{}'.format(self.dia, self.mes, self.ano))
No python console
from datas import Data
obj_data = Data(4, 4, 2023)
obj_data.formatada()
Resultado
04/04/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!
Daora, eu errei na segunda chamada do metodo
Segue o desafio opcional já aproveitando a dica do @Felipe Rafael:
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))