error en método para recuperar índice en lista
Claudio A. Quezada R.
claudio.quezada.r en gmail.com
Vie Sep 28 20:11:58 CEST 2007
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
Más información sobre la lista de distribución Python-es