Hola amigos.

Estoy haciendo para practicar una especie de lista de contactos.
Estoy haciendo con una lista de diccionarios que guardo y abro con pickle.

Ejemplo de estructura:
d = [{'Nombre': 'Antonio','Apellidos': 'F. F.'},
       {'Nombre': 'Maria','Apellidos': 'A. P.','Ciudad': 'GR','Movil': '600000000'},
       {'Nombre': 'Esther','Apellidos': 'L. R.','Movil': '600111111', 'Tipo':'Android'} ]

La idea es que cada nodo pueda tener x campos no fijos. (En el futuro será una base de datos mongoDB)

Problema: Cuando listo, los campos (clave:valor) no salen en el mismo orden que están introducidos: ( pego el prodedimiento de impresión y el resultado)  ¿ Como puedo solucionarlo para que se impriman las claves en el mismo orden que se meten ?

def listar_todo(d):
    i=0
    for n in d:
        print "-----------< Elemento %i >----------" % i
        i+=1
        for g in n.keys():
            print "%s \t%s" % (g, n[g])
---------------------------------------------------------------

-----------< Elemento 0 >----------
Apellidos     F. F.
Nombre     Antonio
-----------< Elemento 1 >----------
Apellidos     A. P.
Nombre     Maria
Ciudad     GR
Movil     600000000
-----------< Elemento 2 >----------
Apellidos     L. R.
Nombre     Esther
Movil     600111111
Tipo     Android
_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a