(Código a partir da implementação def lt(self, outro): return self.saldo < outro.saldo))
class ContaSalario:
def __init__(self, codigo):
self._codigo = codigo
self._saldo = 0
def __eq__(self, outro):
if type(outro) != ContaSalario:
return False
return self._codigo == outro._codigo and self._saldo == outro._saldo
def __lt__(self, outro):
return self._saldo < outro._saldo
def deposita(self, valor):
self._saldo += valor
def __str__(self):
return "[>>Código {} Saldo {}<<]".format(self._codigo, self._saldo)
conta_do_lucas = ContaSalario(17) conta_do_lucas.deposita(500)
conta_do_ryu = ContaSalario(3) conta_do_ryu.deposita(1000)
conta_do_alexandre = ContaCorrente(133) conta_do_alexandre.deposita(510)
contas = [conta_do_lucas, conta_do_ryu, conta_do_alexandre]
print(conta_do_lucas < conta_do_ryu)
print(conta_do_lucas > conta_do_ryu)
for conta in sorted(contas): print(conta)
no entanto
Traceback (most recent call last): File "C:\Users\Lucas\PycharmProjects\pythonProject\pythonCollections parte 1\Herança e Polimorfismo.py", line 243, in for conta in sorted(contas): TypeError: '<' not supported between instances of 'ContaCorrente' and 'ContaSalario'
desde já obrigado!