error en método para recuperar índice en lista

Arnau Sanchez arnau en ehas.org
Vie Sep 28 22:36:25 CEST 2007


Claudio A. Quezada R. escribió:

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

Claudio, dices que lo has arreglado, pero aún así, tu implementación 
parece demasiado verbosa. Si pones un ejemplo real (porque en los que 
mandas no indicas cómo llamas a la función, ni parece concordar con la 
matriz de valores del principio del correo) será muy útil.

Creo que lo que necesitas es "enumerate", ¿no?




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