[pyar] Seleccionar valores de un diccionario de tuplas
John Rowland Lenton
john.lenton en canonical.com
Mie Sep 15 10:37:22 ART 2010
On Wed, Sep 15, 2010 at 01:54:52PM +0200, Alejandro Alcalde wrote:
> Hola, Tengo un problema en el que llevo pensando como resolver desde hace 2
> dias, y no le encuentro solucion, y me decidi a preguntarle a ustedes a ver
> si pueden ayudarme.
>
> Bueno, el caso es que tengo lo siguiente:
>
> niveles =
> ("1(A1)","2(A1)","3(A2)","4(A2)","5(B1)","6(B1)","1-1","1-2","2-1","2-2",">3")
>
> temas = { niveles[0] : ("1","2","3","4","5","6","7"),
> niveles[1] : ("8","9","10","11","12","13","14"),
> niveles[2] : ("15","16","17","18","19","20","21"),
> niveles[3] : ("22","23","24","25","26","27","28"),
> niveles[4] : ("29","30","31","32","33","34","35"),
> niveles[5] : ("36","37","38","39","40","41","42"),
> niveles[6] : ("43","44","45","46"),
> niveles[7] : ("47","48","49","50"),
> niveles[8] : ("51","52","53","54"),
> niveles[9] : ("55","56","57","58"),
> niveles[10] :
> ("59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","74",)}
>
> Bien, pues mi problemas es, que en otro lugar, tengo una variable que
> almacena un valor de temas, por ejemplo el 1, que esta e niveles[0].
> El caso es que nose de que manera puedo obtener, a partir de ese 1, el valor
> de niveles[0], niveles[1], o el que sea, dependiendo del numero.
> Para el caso del 1, deberia obtener 1(A1), es decir, el valor de niveles[0].
>
> Gracias, y espero que puedan ayudarme.
asumiendo que los temas son únicos (es decir, que un tema no vaya a
dos niveles) y si tenés memoria de sobra (no mucha, digo, si no te
preocupa demasiado), podés hacer
tema2nivel = dict((t,n) for (n, ts) in temas.items() for t in ts)
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: Digital signature
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20100915/d798243b/attachment.sig>
More information about the pyar
mailing list