En el post anterior presentamos la ejecución del bucle while en Python e ilustramos su uso mediante un ejemplo. Entre otras cosas, mencionamos que el mismo se ejecuta mientras la condición evalúa a True. En cada iteración se interpretan las instrucciones una por una hasta llegar al fin del bucle. Al llegar a ese punto, se regresa al comienzo y se evalúa nuevamente la condición. En el caso de que la misma continúe siendo verdadera, se realiza una nueva iteración.
Sin embargo, puede suceder que nos interese:
- Antes de terminar una iteración, volver a evaluar la condición.
- Interrumpir la ejecución del bucle y salir del mismo aun cuando la condición continúa evaluando a True.
En esta oportunidad mostraremos cómo usar las sentencias continue y break para lograr estos dos propósitos, respectivamente.
Interrupción de la ejecución del bucle while en Python
Consideremos el siguiente ejemplo. Al ejecutar este código se nos pedirá que ingresemos una cadena de texto (en este caso un nombre). A continuación, se comparará con el nombre esperado. Mientras sea diferente al mismo tendremos que ingresarlo nuevamente. Caso contrario, la sentencia break provocará que se saldrá del bucle.
nombre = '' while nombre != 'Gabriel': nombre = input() if nombre != 'Gabriel': print('Ingrese su nombre nuevamente: ') else: print('Su nombre es Gabriel') break print('Se ha salido del bucle')
Evaluar la condición nuevamente sin llegar al fin de la iteración
Ahora utilizaremos la sentencia continue para modificar el ejemplo anterior:
nombre = '' while nombre != 'Gabriel': nombre = input() if nombre != 'Gabriel': print('Ingrese su nombre nuevamente: ') continue print('Su nombre es Gabriel') print('Se ha salido del bucle')
Como podemos ver, el resultado es el mismo, aunque en este caso la sentencia continue hace que la condición se vuelva a evaluar sin necesidad de llegar al final de la iteración.
Espero que este post les haya resultado útil. ¡Nos leemos en el próximo!