[pyar] Diccionarios *ordenados*

fisa fisadev en gmail.com
Mar Nov 9 18:36:52 ART 2010


El día 9 de noviembre de 2010 18:29, Martin Cerdeira
<martincerdeira en gmail.com> escribió:
> Sé que los diccionarios no están ordenados, pero, hay alguna forma de
> hacer algo así??
>
> dicci = {"nomb":"arla", "bomb":"zapa"}
>
> sortebyKey(dicci)
>
> "zapa"  < porque su key, empieza con b, va primero
> "arla"  < porque su key empieza con n, va segundo
>
> y
>
> sortebyVal(dicci)
>
> "arla"  < porque su valor empieza con a, va primero
> "zapa"  < porque su valor, empieza con z, va segundo
>
> Hay algo así hecho? O tendría que inventar algo yo? (es para evitar la
> fatiga, como diría Jaimito)
>
> En si, lo necesito para algo más complejo[0], pero, creo que con esto
> tendría para arrancar.
>
> Saludos
>
> [0] Lo más complejo, por si alguno tiene curiosidad, es un diccionario así:
>
> dicci = {"key1":obj1, "key2":obj2}
>
> Siendo, obj 1 y 2, instancias de una clase, que guardan una relación
> con su key, por ejemplo, si objeto tiene:
>
> obj.name
> obj.order
>
> Tendría:
>
> dicci["key1"].name = "key1"
> dicci["key1"].order = 1
>
> dicci["key2"].name = "key2"
> dicci["key2"].order = 2
>
> Yo, esta estructura ya la tengo así, lo que me gustaría sería poder
> recorrer los elementos, ordenador por obj<n>.<propiedad> (en este
> caso, por name o por order)
>
> -------------------------------------
> Martín Cerdeira - Software Developer
> [web] http://www.codmacs.blogspot.com/
> ()  ascii ribbon campaign
> /\  www.asciiribbon.org
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>

Con esto podés sacarlo fácil:

[dicci[c] for c in sorted(dicci)]

-- 
fisa  -  Juan Pedro Fisanotti



More information about the pyar mailing list