El 11 de agosto de 2014, 21:29, Manuel A. Estevez Fernandez < stvz...@gmail.com> escribió:
> Gracias por tus comentarios Omar. > > De momento parece que ya lo resolví no se si hay una mejor manera pero de > momento esto es lo que hice: > Primero genero un diccionario con la llave y el valor del orden > >>> ord_ = {key: a_[key]['orden'] for key in a_.keys()} > Luego ordeno y obtengo una lista con el orden de los campos. > >>> sorted(ord_, key=ord_.__getitem__) > Mira a ver si te vale mejor ésto: sorted(a_.items(), key=lambda x: x[1]['orden']) > > > > > by: > > ISC. Manuel Alejandro Estévez Fernández > > > > El 11 de agosto de 2014, 13:57, Omar Gutiérrez <omar....@gmail.com> > escribió: > > Por aquí un ejemplo de *OrderedDict*: >> >> http://pymotw.com/2/collections/ordereddict.html >> >> Yo tenía un problema similar con unos diccionarios que quería convertir a >> JSON. Espero que OrderedDict te ayude. >> >> >> 2014-08-11 13:52 GMT-05:00 Omar Gutiérrez <omar....@gmail.com>: >> >> No estoy seguro, pero al parecer tendrías que usar la clase *OrderedDict* >>> que viene en *collections*. >>> >>> from collections import OrderedDict >>> >>> >>> Esta solución podría no funcionará en versiones viejas de Python. >>> >>> >>> >>> >>> 2014-08-11 13:43 GMT-05:00 Manuel A. Estevez Fernandez < >>> stvz...@gmail.com>: >>> >>>> Hola a todos. >>>> >>>> Tengo un diccionario de la siguiente manera: >>>> >>>> a_ = { >>>> u'Incoterms1': {'aplica': u'Fac', 'indice': 17, 'orden': 4, >>>> 'columna': u'Incoterms1', 'campo': u'Incoterm'} >>>> , u'Net Amount': {'aplica': u'Mer', 'indice': 14, 'orden': 14, >>>> 'columna': u'Net Amount', 'campo': u'Precio Unitario'} >>>> , u'Material Code': {'aplica': u'Mer', 'indice': 5, 'orden': 10, >>>> 'columna': u'Material Code', 'campo': u'Codigo Producto'} >>>> , u'Total Amount': {'aplica': u'Mer', 'indice': 15, 'orden': 15, >>>> 'columna': u'Total Amount', 'campo': u'Importe Total'} >>>> , u'Qty Unit': {'aplica': u'Mer', 'indice': 13, 'orden': 13, >>>> 'columna': u'Qty Unit', 'campo':u'Unidad Comercial'} >>>> , u'Currency': {'aplica': u'Fac', 'indice': 16, 'orden': >>>> 7,'columna': u'Currency', 'campo': u'Moneda '} >>>> , u'Invoice Number': {'aplica': u'Fac', 'indice': 3, 'orden': 3, >>>> 'columna': u'Invoice Number', 'campo': u'Numero Factura'} >>>> , u'House BL No.': {'aplica': u'Gui', 'indice': 2, 'orden': 2, >>>> 'columna':u'House BL No.', 'campo': u'Guia House'} >>>> , u'Master BL No.': {'aplica': u'Gui', 'indice': 22, 'orden': 1, >>>> 'columna': u'Master BL No.', 'campo': u'Guia Master'} >>>> , u'DO Created on': {'aplica': u'Fac', 'indice': 19, 'orden': 5, >>>> 'columna': u'DO Created on', 'campo': u'Fecha Factura'} >>>> , u'Reference Doc(SO/PO)': {'aplica': u'Fac', 'indice': 1, 'orden': >>>> 6, 'columna': u'Reference Doc(SO/PO)', 'campo': u'Orden de Compra'} >>>> , u'Delivery Qty.': {'aplica': u'Mer', 'indice': 6, 'orden': 12, >>>> 'columna': u'Delivery Qty.', 'campo': u'Cantidad Comercial'} >>>> } >>>> >>>> y tengo que ordenarlo en relación al valor del KEY orden que se >>>> encuentra en el diccionario interno. >>>> >>>> ¿algún consejo sobre como hacerlo? >>>> >>>> De momento he logrado extraer el valor de orden de cada uno y >>>> ordenarlo, pero ya me atoré. >>>> >>>> sorted([ value['orden'] for (key,value) in sorted(a_.items())]) >>>> >>>> Agradezco de antemano la ayuda. >>>> >>>> by: >>>> >>>> ISC. Manuel Alejandro Estévez Fernández >>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es@python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es@python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/