2011-08-02 12 views
9
from collections import namedtuple 
Gaga = namedtuple('Gaga', ['id', 'subject', 'recipient']) 
g = Gaga(id=1, subject='hello', recipient='Janitor') 

Quiero ser capaz de obtener esta lista (que conserva el orden de las propiedades):Cómo convertir una namedtuple en una lista de valores y preservar el orden de las propiedades?

[1, 'hello', 'Janitor'] 

que podría crear esta lista a mí mismo de forma manual pero tiene que haber una manera más fácil. Traté:

g._asdict().values() 

pero las propiedades no están en el orden que quiera.

+3

Una tupla llamada ya es una secuencia de valores (como una lista). Lo que no funciona? 'g [0] == 1 yg [1] == 'asunto yg [2] =' destinatario''. Como ya se comporta como una lista, ¿qué más necesitas? –

+0

@ S.Lott MUCHAS GRACIAS, me siento tan estúpido por olvidar que todavía es una tupla, estaba pensando en ello como un diccionario -_- – ishikun

Respuesta

23

¿Por qué no solo list?

>>> list(g) 
[1, 'hello', 'Janitor'] 
Cuestiones relacionadas