Un “Loop” (ciclo) es un bloque de código que se va a ejecutar bajo una condición.
El número de iteraciones está dado en la condición misma o ya tendrá un número preestablecido.
fori inelement:
#{SENTENCE}
“I” Es una variable que hará el recorrido en cada uno de los elementos y “element” es el elemento en donde hará ese recorrido, puede se un Array, una Tupla, un Diccionario sin importar el tipo de datos que contenga, “#SENTENCE” es el bloque de código que se ejecutará por cada iteración.
Veamos un ejemplo
Tenemos una lista de números y queremos que nos imprima uno por uno y no la lista comleta de una soa vez.
num = [1,2,3,4,5,6,7,8,9]
for i innum:
print(i)
Como hemos dicho antes, “i” es la variable que iterará, entonces en la primera iteración “i” estará en el index “0” (recordemos que en los Arrays, los elementos tienen un index/ índice y este empieza desde el “0”) entonces imprimirá “1”, en la segunda iteración, “i” estará en el index “1” entonces imprimirá “2”, en la tercera iteración “i” estará en el index “2” entonces imprimirá “3”.
Dando como resultado:
while"condicion":
#SENTENCE
El Ciclo While, está conformado por una condición y mientras esa condición sea “True” va a iterar y ejecutar la sentencia hasta que esa condicion deje de ser “True” y pase a ser un “False”.
Hay que tener mucho cuidado con esta condición, porque puede caer en un Loop infinito si no se condiciona adecuadamente.
Un ejemplo es el siguiente:
whileTrue:
print("Esta condición es True")
¿Qué nos dice este loop?, bueno pues su traducción literal es: “Mientras ésto sea verdad ejecuta lo siguiente”. Lla condición es un dato de tipo booleano que nos dice que es verdad (“True”), es decir que cumple la condición para que la sentencia se ejecute.
Y como podemos ver, esta condición nos llevará a un Loop infinito ya que la condición siempre se cumplirá
Ahora veamos un ejemplo son caer en un loop infinito:
count = 0
whilecount < 10:
print(count)
count += 1
La traducción literal es: “Mientras count sea menor a 10, ejecuta ésto”. Ésto significa que siempre que “count” sea menor a 10, va a ejecutar la impresión y le va a sumar “1” por cada iteración, y como podemos ver, no caerá en un loop infinito ya que en el momento en que “count” deje de ser menor a “10”, ya no se cumplirá la condición y dejará de ejecutarse.
Nota: Podemos forzar la detención de una ejecución con el uso de un “break” o un “continue”, pero eso ya lo explicaré en otra ocasión xd.