Curso finalizado
Fiz uma pequena alteração no método transfere(valor, destino) para somente depositar na conta destino se ouver saldo na conta de origem. Ficou assim:
def transfere(self, valor, destino):
# somente transfere se a conta de origem possuir saldo e/ou limite
if self.__pode_sacar(valor):
self.saca(valor)
destino.deposita(valor)
print("Transferência realizada com sucesso")
else:
print("Erro de transferência! Verifique seu saldo")