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

def transfere(self, valor, destino)

Olá Pessoal, boa tarde!

Tudo bem?

Está dando este Erro quando executo conta2.transfere(10.0, conta)

Por gentileza, poderia me dar um help.

Erro:

>>> from conta import Conta
>>> conta = Conta(123, "Nan", 55.5, 1000.0)
Construindo objeto ... <conta.Conta object at 0x000002ADD26E6E50>
>>> conta2 = Conta(321, "Pedro", 100.0, 2000.0)
Construindo objeto ... <conta.Conta object at 0x000002ADD26E6E90>
>>> conta2.transfere(10.0, conta)               
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Conta.transfere() missing 1 required positional argument: 'destino'
>>> conta2.transfere(10.0, conta)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Conta.transfere() missing 1 required positional argument: 'destino'
>>> conta2.transfere(10.0, conta)
class Conta:

    def __init__(self, numero, titular, saldo, limite):
        print("Construindo objeto ... {}".format(self))
        self.__numero = numero
        self.__titular = titular
        self.__saldo = saldo
        self.__limite = limite

    def extrato(self):
        print("Saldo de R$ {} do titular {}".format(self.__saldo, self.__titular))

    def deposita(self, valor):
        self.__saldo += valor

    def saca(self, valor):
        self.__saldo -= valor

    def transfere(self, valor, destino): 
        self.saca(valor)
        destino.deposita(valor)

Obrigado!

2 respostas

Olá,

aparentemente seu código está correto.

Verifique se a classe atual carregada no interpretador corresponde à última versão do código existente no módulo conta.py.

Como teste, reinicie o interpretador.

Até +

solução!

Olá Luciano, bom dia!

Obrigado!