Extraiga la lista de atributos de la lista de objetos en Python

Tengo una lista uniforme de objetos en python:

class myClass(object): def __init__(self, attr): self.attr = attr self.other = None objs = [myClass (i) for i in range(10)] 

Ahora quiero extraer una lista con algún atributo de esa clase (digamos attr), para pasarla así que alguna función (para trazar esos datos, por ejemplo)

¿Cuál es la forma pythonica de hacerlo,

 attr=[o.attr for o in objsm] 

?

Tal vez derivar la lista y agregarle un método, así puedo usar algún lenguaje como

 objs.getattribute("attr") 

?

También puedes escribir:

 attr=(o.attr for o in objsm) 

De esta forma obtienes un generador que conserva memoria. Para obtener más beneficios, consulte Generator Expressions .

attrs = [o.attr for o in objs] fue el código correcto para hacer una lista como la que usted describe. No intente hacer una subclase de list para esto. ¿Hay algo que no te gustó de ese fragmento?