Depois de assistir o curso de coleções em python fui ler um artigo de ordenação de listas. https://www.alura.com.br/artigos/ordenando-listas-no-python e lá o instrutor fala pra ordenarmos a lista pelo nome, ai eu queria saber se tem alguam diferença muito grande em definir na hora da ordenação como ele fez ou se da pra colocar direto na classe sem problemas.
Meu código:
class Produto(object):
def __init__(self, nome, valor):
self.__nome = nome
self.__valor = valor
def __repr__(self):
return "nome:%s , valor:%s" % (self.__nome, self.__valor)
def get_nome(self):
return self.__nome
def get_valor(self):
return self.__valor
def __lt__(self, other):
return self.__nome < other.__nome
palavras = ['chocolate', 'biscoito', 'cafe', 'suco', 'feijao', 'arroz']
numeros = [3.45,2.49,3.45,4.3,10.0,8.5]
count = 0
precos =[]
for i in range(len(palavras)):
precos.append(Produto(palavras[count],numeros[count]))
count +=1
for preco in sorted(precos):
print(preco)