Introducción a la programación en Python 4 — Ciclos for y while

René Silva Valdés
3 min readOct 8, 2021

--

Cómo programar ciclos for y while en Python

Una necesidad frecuente al momento de programar es ejecutar el mismo bloque de código (o similar), varias veces. Para esto, es necesario hacer un loop o bucle que ejecute nuestro código. Por ejemplo, si queremos contar hasta diez, en lugar de hacer:

print(1) 
print(2)
print(3)
print(4)
print(5)
print(6)
print(7)
print(8)
print(9)
print(10)

Nos gustaría algo más minimalista, como por ejemplo:

for contador in range(1, 11):
print(contador)

o

contador = 1
while contador < 11:
print(contador)
contador = contador + 1

La diferencia de escalabilidad entre la primera opción y las dos últimas es evidente. En estos dos códigos, la parte indentada es la que se repite varias veces. La primera corresponde a un ciclo for y la segunda a un while. No existe gran diferencia entre ambos opciones, por lo que dependerá de que necesitamos hacer y con que nos sentimos más cómodos para ver que opción escoger.

Ciclo for

Un ciclo for es un bloque de código que se va ejecutando a medida que este va “recorriendo” un objeto (esto lo veremos en detalle más adelante). En el caso del ejemplo anterior range(1,11) retorna los números del 1 al 10 en lo que se conoce como una lista y el ciclo for va recorriendo cada elemento de ella, asignando cada número a la variable contador en cada iteración. Otro ejemplo sería si deseamos deletrear una palabra (o más bien, un string):

palabra = "python"
for letra in palabra:
print(letra)

En este ejemplo, el ciclo for irá recorriendo cada letra del string y lo asignará a la variable letra, que luego se mostrará en pantalla. En lineas generales, la sintaxis de un ciclo for es:

for variable in objeto:
instrucciones

El código irá asignando dinámicamente el valor de variable e irá ejecutando el código de instrucciones .

Instrucción while

Un ciclo while funciona de manera similar a un ciclo for , tenemos un bloque de código que se ejecuta de manera iterativa, sin embargo, en un ciclo while el bloque se ejecutará mientras se cumpla una condición dada. En el ejemplo de más arriba, el bloque de código se ejecuta mientras contador sea menor a 11, y como se inicializó como 1, abarcará todos los números del 1 al 10. Notamos que en el bloque de código se actualiza el valor de la variable contador sumándole 1. Esto es importante ya que, en caso de no hacerlo, la condición siempre sería verdadera ( True ) y el código se quedaría pegado en el loop. Otro ejemplo sería si queremos hacer la misma cuenta, pero en reversa:

contador = 10
while contador > 0:
print(contador)
contador = contador - 1

Aquí vemos que la variable se inicializa como 10 y la condición se modificó por contador > 0 de modo que contador recorrerá los números de 10 al 1, terminando de ejecutarse el programa cuando contador valga 0. De este modo, un ciclo while se puede escribir en python como:

while condicion:
instrucciones

Y esto se entiende como que mientras la condición se cumpla ( True), se ejecutará el bloque de instrucciones. Por último, tenemos que un ciclo while puede incluir las palabras break y continue . break se utiliza para interrumpir la ejecución de código dentro del bloque, mientras que continue se usa para terminar con la iteración actual y continuar con la siguiente:

import random
while True:
i = random.randint(1,100)
print(i)
if i == 3:
break

En este ejemplo, el programa se inicializa para ejecutarse indefinidamente con while True y se detendrá cuando el número aleatorio retornado por random.randin sea igual a 3 gracias a la instrucción break .

Con esto hemos aprendido como hacer iteraciones en nuestros códigos de Python. Espero que te haya servido y nos vemos en la siguiente entrega.

Un saludo!

--

--

No responses yet