Los Bucles WHILE (Materia Extra) 14/09/2022

¿Qué son los bucles?

Si estás aprendiendo a programar, los bucles son uno de los conceptos principales que debe comprender. Los bucles te ayudan a ejecutar una secuencia de instrucciones hasta que se cumple una condición.

Hay dos tipos principales de bucles en Python.

  • Bucles For
  • Bucles While

Ambos tipos de bucles se pueden utilizar para acciones similares. Pero a medida que aprendas a escribir programas eficientes, sabrás cuándo usar cual.

En este artículo, veremos los bucles while en Python. Para obtener más información sobre los bucles for, consulta este artículo publicado recientemente en freeCodeCamp.

Antes de comenzar a escribir código, veamos el diagrama de flujo para ver cómo funciona.

while-loop

Ahora escribamos algo de código. Así es como se escribe un bucle while simple para imprimir números del 1 al 10.

#!/usr/bin/python

x = 1

while(x <= 10):
	print(x)
	x = x+1

Si observas el código anterior, el bucle sólo se ejecutará si x es menor o igual que 10. Si inicializa x como 20, el ciclo nunca se ejecutará.

Aquí está la salida del bucle while:

> python script.py
1
2
3
4
5
6
7
8
9
10

Bucle Do-While

Hay dos variantes del bucle while: while y do-While. La diferencia entre los dos es que do-while se ejecuta al menos una vez.

Es posible que un bucle while ni siquiera se ejecute una vez si no se cumple la condición. Sin embargo, do-while se ejecutará una vez, luego verificará la condición para bucles posteriores.

do-while

A pesar de estar presente en la mayoría de los lenguajes de programación populares, Python no tiene una declaración nativa do-while. Pero puede emular fácilmente un bucle do-while utilizando otros enfoques, como funciones.

Probemos el enfoque de hacer mientras envuelve los comandos en una función.

#!/usr/bin/python

x = 20

def run_commands():
	x = x+1
	print(x)


run_commands()
while(x <= 10):
	run_commands()

El código anterior ejecuta la función "run_commands ()" una vez antes de invocar el bucle while. Una vez que se inicia el bucle while, la función "run_commands" nunca se ejecutará ya que x es igual a 20.

While - Else

Puedes agregar una instrucción else para ejecutar si falla la condición de bucle.

Agreguemos una condición else a nuestro código para imprimir "Done" una vez que hayamos impreso los números del 1 al 10.

#!/usr/bin/python

x = 1

while(x <= 10):
	print(x)
	x = x+1
else:
	print("Done")

El código anterior imprimirá primero los números del 1 al 10. Cuando x es 11, la condición while fallará, desencadenando la condición 

Comentarios