que tiene una lista de instancias de clases -Ordenar una lista de instancias de clase Python
x = [<iteminstance1>,...]
entre otros atributos de la clase tiene score
atributo. ¿Cómo puedo ordenar los artículos en orden ascendente según este parámetro?
EDITAR: El list
en Python tiene algo que se llama sort
. ¿Podría usar esto aquí? ¿Cómo dirijo esta función para usar mi atributo score
?
wow! es así de simple !! Acabo de revisarlo. Es :) –
¡Bienvenido a Python! En aras de la completitud: el parámetro "clave" para activar funciones/métodos acepta una función como su parámetro. El módulo de operador proporciona funciones útiles para las tareas que normalmente realiza el lenguaje Sintaxis en sí misma, como una función "agregar" para hacer lo mismo que el token "+" en el idioma, y en este caso el attrgetter para hacer lo mismo " . "conector hace en la sintaxis. Otros parámetros para "clave" pueden ser funciones in place definidas con "lambda". En este caso, sorted_x = sorted (x, lambda x: x.score)) - también habría funcionado. El ejemplo dado es mejor, sin embargo. – jsbueno
No estoy seguro de que usar 'attrgetter' sea mejor. Lambdas parece ser igual de rápido y parece más limpio IMO. – adw