Re: error en método para recuperar índice en lista

Claudio A. Quezada R. claudio.quezada.r en gmail.com
Vie Sep 28 20:21:43 CEST 2007


brrrrrp, me respondo yo mismo. Index devuelve el "primer" indice en
que aparece un valor en la lista... entonces habria que eliminar esa
fila, y ya esta...

El 28/09/07, Claudio A. Quezada R. <claudio.quezada.r en gmail.com> escribió:
> Hola,
>
> Tengo el siguiente problema. Tengo una lista creada de acuerdo a una
> grilla de datos, algo así: [[1,2,3,4,5],[6,7,8,9,0],[11,22,33,44,55]].
>
> Quiero recuperar los índices: 1) de la primera columna en la que
> aparece mi "valor", 2) todos los índices fila que aparece repetido mi
> "valor", en esa columna .
>
> La llamo así (enviándole la lista de valores, y mi valor "gremio" a buscar:
>
> def recorrerGremios(valores, gremio):
>     indice = []
>     for columna in valores:
>         for fila in columna:
>             if fila == gremio:
>                 indice.append(columna.index(fila))
>             continue #optativo
>
>         if len(indice)>0:
>             return [valores.index(columna),indice]
>
>     return False
>
> El problema es que no me retorna todos los indices "fila", sino, me
> retorna el indice a la primera fila, repetido tantas veces como
> aparezca mi gremio en la columna, algo asi:
>
> [3,[0,0,0,0,0,0]] #llamada con 1 gremio
> [0,[0]] #llamada con otro gremio
> [2,[6,6] #llamada con otro gremio más.
>
> También probé agregándole el continue y poniéndolo dentro del if
> gremio==fila, y dentro del 2do for, incluso con un break (nada que
> ver), y con un pass.
>
> Debe de haber algún detalle que se me escapa... Agradecería sus aportes.
>
> Saludos,
>
>
> --
> Claudio Quezada Romegialli
> Ingeniero Ambiental
> (02)7321665 - 81466049
>


-- 
Claudio Quezada Romegialli
Ingeniero Ambiental
(02)7321665 - 81466049




Más información sobre la lista de distribución Python-es