1

¿Cómo diferenciar un ciclo While de un ciclo For?

Primero tenemos que entender que existen los bucles finitos e infinitos.
Por lo que un ciclo** FOR** es un bucle finito, ya que sabemos que la cantidad de iteraciones que va a realizar va a ser finita.

Por ejemplo:
Si tenemos una lista dada:

my_list = [1, -1, 2, -2, 3, -3, 4, -4]

Queremos obtener los números positivos únicamente.
Para ello creamos una nueva lista vacía donde nuestro ciclo va a guardar el resultado obtenido.

new_list = []

Y ahora realizaremos un ciclo for

for positiv in my_list:
     ifi > :
         new_list.append(i)

print(new_list)

Este código nos va a arrojar los números positivos de la primera lista [1, 2, 3, 4], por lo tanto sabemos que va a existe un límite.

Por otro lado el ciclo WHILE son bucles infinitos, por lo que no tenemos certeza de cuántas veces se va a repetir nuestro código.
Por ejemplo, si le hacemos una pregunta al usuario y no sabe la respuesta correcta pero puede intentarlo infinitas veces hasta dar con la respuesta.
Algo como ¿Cuántas lunas tiene Jupiter?
La respuesta correcta es 79, sin embargo, el usuario puede no saberlo a la primera por lo que el ciclo while se va a repetir hasta que obtenga la respuesta correcta (condicional).
Esto lo hacemos de la siguiente manera:

respuesta = int(input("Cuántas lunas tiene Jupiter?"))

while respuesta != 79: #Siempre que sea diferente de 79, se va a estar repitiendo. 
    respuesta =int(input("Respuesta equivocada, responde otra vez"))

print("¡Enhorabuena!")

Por lo que al recibir la respuesta correcta el ciclo termina y nos arroja un letrero felicitándonos.

Y bien, espero que hayas entendido la diferencia entre estos dos ciclos o loops.

¡Gracias!

Escribe tu comentario
+ 2