2
respostas

Não entendi a explicação

Na explicação "Para saber mais: construtores com valores padrão", nos é demonstrado a utilização de um valor de 1000.00 já atribuído ao atributo limite da classe Conta como um meio de resolver o problema com a conta de limite especial.

conta1 = Conta(1, "Fulano", 0.0, 1000.0)
conta2 = Conta(2, "Beltrano", 0.0, 1000.0)
conta3 = Conta(3, "Sicrano", 0.0, 2000.0)
class Conta:

    def __init__(self, numero, titular, saldo, limite = 1000.0):
        self.numero = numero
        self.titular = titular
        self.saldo = saldo
        self.limite = limite

No entanto, não vejo a utilidade disso, já que com esse método as contas 1 e 2 ficam sem nenhum limite definido, inclusive se tento criar a conta1 com os mesmos 3 atributos ao invés de 4, recebo um erro pedindo o atributo limite e se eu passar um valor nulo ele não automaticamente fica setado como 1000.00 Gostaria de uma explicação melhor sobre isso por favor.

conta1 = Conta(1, "Fulano", 0.0)
conta2 = Conta(2, "Beltrano", 0.0)
conta3 = Conta(3, "Sicrano", 0.0, 2000.0)
2 respostas

Você esta usando o prompt python para fazer os teste? se for o caso, talvez precise criar a classe novamente. isso porque teste aqui e funcionou corretamente

>>> class Conta:

    def __init__(self, numero, titular, saldo, limite = 1000.0):
        self.numero = numero
        self.titular = titular
        self.saldo = saldo
        self.limite = limite


>>> conta1 = Conta(1, "Fulano", 0.0)
>>> conta2 = Conta(2, "Beltrano", 0.0)
>>> conta3 = Conta(3, "Sicrano", 0.0, 2000.0)
>>> 
>>> print (conta1.numero, conta1.titular, conta1.saldo, conta1.limite)
1 Fulano 0.0 1000.0
>>> print (conta2.numero, conta2.titular, conta2.saldo, conta2.limite)
2 Beltrano 0.0 1000.0
>>> print (conta3.numero, conta3.titular, conta3.saldo, conta3.limite)
3 Sicrano 0.0 2000.0

Sim estou, vou testar novamente então. Obrigado!

Editado Realmente refiz toda a função no terminal do python e agora está imprimindo corretamente o valor. Devo ter feito algo errado da primeira vez! Obrigado Jônatas!