Obtener el recuento de bucles dentro de un bucle for [duplicado]
Este for
bucle itera sobre todos los elementos de una lista:
for item in my_list:
print item
¿Hay alguna manera de saber dentro del bucle cuántas veces he estado realizando el bucle hasta ahora? Por ejemplo, quiero tomar una lista y después de haber procesado diez elementos quiero hacer algo con ellos.
Las alternativas que pensé serían algo como:
count=0
for item in my_list:
print item
count +=1
if count % 10 == 0:
print 'did ten'
O:
for count in range(0,len(my_list)):
print my_list[count]
if count % 10 == 0:
print 'did ten'
¿Existe una forma mejor (como for item in my_list
) de obtener el número de iteraciones hasta el momento?
Aceptado
La forma pitónica es utilizar enumerate
:
for idx, item in enumerate(my_list):
De acuerdo con Nick. Aquí hay un código más elaborado.
#count=0
for idx, item in enumerate(list):
print item
#count +=1
#if count % 10 == 0:
if (idx+1) % 10 == 0:
print 'did ten'
He comentado la variable de recuento en su código.