Son tipos de estructuras de control de flujo, que funcionan de forma diferente a los if / else
. En este caso, se indica un loop, bucle, o repetición que durará mientras se cumpla determinada condición.
for
For se utiliza para recorrer todos los elementos de una lista, de uno en uno, y ejecutar acciones sobre cada uno de sus elementos.
Vamos a verlo con un ejemplo. Supongamos que tenemos una lista de colores:
|
|
Si quisieramos imprimir los valores que se encuentran en cada uno de sus incides, podríamos scribirlo así:
|
|
Si añadieramos otro elemento más a la lista, tendríamos que definir una nueva sentencia print()
con su nuevo índice para que se imprima.
Esto podríamos hacerlo de manera mucho más simple y controlada utilizando for:
|
|
Esto significaría: para cada elemento (que vamos a llamar color), de la lista colores, haz un print()
del elemento.
Lógicamente, dentro de for se puede utilizar otro tipo de estructuras según nuestras necesidades. Por ejemplo, podemos parar el programa cuando el color sea amarillo.
|
|
Otro ejemplo de for
. Vamos a imprimir un rango de números, del 1 al 5, ayudándonos del constructor range()
|
|
for
también funciona con los difererentes caracteres de un string, por ejemplo:
|
|
while
Es un loop algo parecido a for
, aunque en este caso se recorren los elementos MIENTRAS la condición dada sea cierta. Se podría ver como un for
condicional. Hay que tener cuidado con los while
, ya que una vez que se ejecuta, vuelve al inicio, por lo que hay que asegurarse que tenemos algún mecanismo de control.
Así en un par de lineas parece complejo, pero como siempre, vamos a verlo con un ejemplo: Vamos a definir un número. Mientras este numero sea inferior a 10, lo imprimimos. Ya que numero es un valor fijo, el bucle se repitiría infinitamente con el mismo valor, por lo que nos aseguramos de que tras cada ejecución, el valor de numero de incremente. En el momento que el número sea 10, la condición del while ya no se cumple, por lo que se salta el bucle.
|
|