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

Desafio Opcional

class Datas:

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

Para executar, realizei os seguintes passos:

from datas import Datas

d = Datas(21, 11, 2007)

d.formatada()

21/11/2007
5 respostas
solução!

Olá Alexandra, tudo bem com você?

Parabéns pelo seu empenho e por compartilhar com a comunidade seu desenvolvimento.

Uma dica para implementação da função formatada(self) é a manipulação dos valores do dia e mês para que sejam fornecidos em um padrão determinado, para isso devemos inserir nas data valores do tipo int, deixo abaixo um exemplo:

    def formatada(self):
        print(f"{self.dia:02d}/{self.mes:02d}/{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 2/4/2022, seria preenchido com zeros a esquerda, como mostro abaixo:

class Datas:

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

Para podermos usar a formatação acima, devemos informar a data usando valores do tipo int (inteiros) como falado anteriormente. Deixo abaixo como usar no console:

No console


from datas import Datas

d = Datas(2, 4, 2022)

d.formatada()
# Resultado

02/04/2022

Para saber um pouco mais sobre a formatação de string recomendo esse artigo Anatomy of String Formatting in Python em português: Anatomia da string - formatando em Python. Caso tenha dificuldades com o idioma, recomendo que use o tradutor que existe no navegador.

Continue assim sempre usando o fórum, seja para compartilhar conhecimentos ou para tirar dúvidas.

Abraços e bons estudos!

Muito obrigada pelas dicas, Felippe!

Definição da classe Data

class Data:

def __init__(self, dia, mes, ano):
    print("--- Construindo Data ---")
    self.dia = dia
    self.mes = mes
    self.ano = ano

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

Execulção

from conta import Conta
from data import Data

data = Data(21, 11, 2017)
data.formatada()

Saida console

--- Construindo Data ---
21/11/2017