Hasta este momento nuestros programas funcionan bastante bien, sin embargo, solamente se pueden ejecutar 1 vez y luego se paran, o si deseamos hacer que una tarea se repita una cantidad de veces, tendremos que repetir el código para ello múltiples veces.

La solución a este problema se define como un bucle o ciclo, en programación, es una secuencia que ejecuta repetidas veces un trozo de código, una numero de veces que puede ser determinado o que puedan depender de una expresión lógica.

Ejemplo de la estructura y funcionamiento del ciclo while**:**

nombre = ""

while nombre == "" or nombre.isspace():
	print("El nombre no puede estar vacio")
	nombre = input("Escribe un nombre: ")

Como se puede observar en el ejemplo anterior, la variable de tipo String nombre es declarada vacía, y dado que la condición del while predominante es una disyunción, se puede observar que una de las dos condiciones se cumple, por lo tanto entra al bucle ejecutándose tantas veces el código dentro de su estructura hasta que la variable nombre sea diferente a vacía o que no solo contenga espacios en blanco.

En python hay varias maneras, usos y diferentes formas de estructurar un bucle o ciclo for para manejarlo a nuestra conveniencia, haciendo que los mismo difieran en su respectiva funcionalidad y eso depende del contexto en el que debamos someter un determinado algoritmo o trozo de código.

En su respectiva estructura a la hora de declarar la misma, se determina primeramente el nombre de la sentencia for seguido de una variable cualquiera que será una representación iterativa; la cual cambiará con cada iteración del mismo ciclo, y es usada para determinar la cantidad de veces que se ejecutará un respectivo algoritmo o trozo de código. (La variable iterativa tomará el valor de la respectiva iteración y esta depende a la declaración del ciclo a la que esté sometida).

for x in [1,2,7,5]:
	print(x)

#El output de este algoritmo devuelve:
#1
#2
#7
#5

En este ejemplo se emplea un ciclo for con la variable iterativa “x”. Por lo que se puede decir que: “x” en esta estructuración del bucle toma los valores del determinado array ejecutando así el ciclo tantas veces como elementos tenga la respectiva lista o array.

El for utilizando la sentencia range como parte de la estructuración del mismo, recorre y ejecuta un respectivo algoritmo tantas veces como esté expuesto en un rango de números. Y este puede derivarse a 3 casos diferentes:

  1. range(a): “La variable iterativa ‘x’ comenzara desde cero ‘0’ hasta el número expuesto dentro del range menos uno (a-1)”.
for x in range(len([1,2,4,6])):
	print(x)

#El output de este algoritmo devuelve:
#0
#1
#2
#3
  1. range(a,b): “La variable iterativa ‘x’ comenzará desde el número pasado como primer parámetro o término ‘a’ hasta el número expuesto como segundo término o parámetro 'b' menos uno (b-1).
for x in range(1,5):
	print(x)

#El output del programa devolvera:
#1
#2
#3
#4

  1. range (a,b,c): “La variable iterativa ‘x’ comenzará desde el número pasado como primer parámetro ‘a’, hasta el número expuesto pasado como segundo parámetro ‘b’ menos uno (b-1). Pero, en este caso con una derivación en el conteo de la variable ‘a’, y es que esta crece o decrece según lo expuesto en el parámetro ‘c’.