Los bucles son muy útiles para iterar sobre un objeto o simplemente repetir una parte del código. Sin embargo, a veces es necesario "romper" el bucle prematuramente. Imagina que quieres encontrar el primer elemento negativo en una secuencia. Si comienzas iterando desde el primer elemento de la secuencia y continúas, querrás detener el bucle tan pronto como encuentres un elemento negativo y no seguir iterando, ya que sería redundante. Esto se puede lograr con la instrucción break:
numbers = [
1, 5, 100, 77,
2, -7, 8, 10,
14, 67, -8, 0,
]
for n in numbers:
print(f'Trying {n}...')
if n < 0:
print(f'Found a negative number: {n}')
break
print('Done!')
La salida del programa será la siguiente:
Trying 1...
Trying 5...
Trying 100...
Trying 77...
Trying 2...
Trying -7...
Found a negative number: -7
Done!
El programa se detiene tan pronto como encuentra un número negativo.
Desafío
Estás buscando los registros de Mike en un gran montón de documentos. Revisas cada documento uno por uno y tratas de ver de quién son los registros. Si encuentras a Mike en los registros, te gustaría imprimir el número de documentos que has revisado antes de encontrar el de Mike.
La entrada contiene nombres: cada nombre en una línea.
La salida del programa debería ser: Found Mike's records after looking through X documents. Donde X es el número de documentos que has revisado hasta ahora.
Entrada
Salida
Kate
Bob
Mike
Anna
Steven
Found Mike's records after looking through 3 documents