Los diccionarios son básicamente desordenados la forma más lógica de
hacerlo es obtener las llaves, ordenarlas en una lista y luego llamar el
diccionario recorriendo la lista.
Los diccionarios ordenados son a partir de la 2.7 creo

http://stackoverflow.com/questions/9001509/python-dictionary-sort-by-key


El 11 de agosto de 2014, 19:52, Omar Gutiérrez <omar....@gmail.com>
escribió:

> 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/
>
>


-- 
*monoBOT*
Visite mi sitio(Visit my site): monobotsoft.es/blog/
_______________________________________________
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