meu código está assim:
class Times:
def __init__(self, nome, quant_jogadores, divisao, titulos):
self.nome = nome
self.quant_jogadores = quant_jogadores
self.divisao = divisao
self.titulos = titulos
def __str__(self):
return (f' Time:{self.nome} Titulos:{self.titulos} Divisão: {self.divisao}')
def __lt__(self, outro):
return self.titulos > outro.titulos
real_madri = Times("Real Madri", 22, "1ª divisão do Campeonato Europeu", 15)
barcelona = Times("Barcelona", 22, "1ª divisão do Campeonato Europeu", 22)
juventus = Times("Juventus", 22, "1ª divisão do Campeonato Italiano", 17)
bayer_de_muchen = Times("Bayern de Munchen", 22, "1ª divisão do Campeonato Alemão", 21)
manchester_united = Times("Manchester United", 22, "1ª diisão do Campeonato Inglês", 18)
milan = Times("Milan", 22, "1ª divisão do Campeonato Inglês", 25)
porto = Times("Porto", 22, "1ª divisão do Campeonato Português", 23)
times_europeus = [real_madri, barcelona, juventus, bayer_de_muchen, manchester_united, milan, porto]
def extrai_titulos(time):
return time.titulos
sorted(times_europeus, key=extrai_titulos)
for time in times_europeus:
print(sorted(time))
porem ao invés de devolver uma lista ordenada baseada no número de titulos, me devolve um error O error é esse: Traceback (most recent call last): File "C:\Users\jeanf\Caio\PycharmProjects\Campeonato\campeonato.py", line 33, in print(sorted(time)) TypeError: 'Times' object is not iterable