for elemento in iterable:
# bloque de código que usa “elemento”
9 Iteraciones y bucles
Aprender a automatizar el proceso de iteración en listas utilizando bucles y controles de iteración es fundamental para optimizar el manejo de datos en Python.
9.1 For
Un bucle for
en Python te permite recorrer secuencias (listas, tuplas, cadenas, rangos, etc.) elemento a elemento, ejecutando un bloque de código para cada uno. Su sintaxis básica es:
Sus características son:
Iterable: cualquier objeto que implemente el protocolo de iteración (list, tuple, str, dict, range, etc.).
Elemento: variable que toma, en cada iteración, el siguiente valor del iterable.
El bloque indentado se ejecuta una vez por cada elemento.
Ejemplo con una lista
# Lista
= [1, 2, 3, 4, 5, 6]
numbers
# Imprimir el valor de i
for i in numbers:
print(f"El valor de i es: {i}")
El valor de i es: 1
El valor de i es: 2
El valor de i es: 3
El valor de i es: 4
El valor de i es: 5
El valor de i es: 6
9.2 Range
ELa función range
permite iterar un conjunto de números fijos para producir índices o repeticiones controladas.
Es importante mencionar que range omite el último número solicitado.
Ejemplos:
# Imprimit del 0 al 9, omitiendo el 10
for i in range(10):
print(i)
0
1
2
3
4
5
6
7
8
9
# Imprime del 3 al 9
for i in range(3, 10):
print(i)
3
4
5
6
7
8
9
# range(start, stop, step)
# Imprime los pares entre 2 y 10 (excluyendo 10)
for n in range(2, 10, 2):
print(n)
2
4
6
8
9.3 Condicionales dentro de bucles
También podemos utilizar condicionales ìf
, else
y elif
al momento de usar los bucles for.
Un ejemplo sencillo sería:
= ["manzana", "pera", "uva", "naranja", "tomate"]
frutas for fruta in frutas:
print(fruta)
if fruta == "naranja":
print("naranja encontrada")
manzana
pera
uva
naranja
naranja encontrada
tomate
En tanto, un ejemplo más complejo sería:
El
for
iterai
desde 0 hasta 9.if i % 2 == 0
comprueba si es par.Si no es par,
elif i % 3 == 0
comprueba si es múltiplo de 3.else
cubre todos los demás casos.
# Recorremos del 0 al 9
for i in range(10):
if i % 2 == 0:
print(f"{i} es par")
elif i % 3 == 0:
print(f"{i} es múltiplo de 3 pero no par")
else:
print(f"{i} es impar y no múltiplo de 3")
0 es par
1 es impar y no múltiplo de 3
2 es par
3 es múltiplo de 3 pero no par
4 es par
5 es impar y no múltiplo de 3
6 es par
7 es impar y no múltiplo de 3
8 es par
9 es múltiplo de 3 pero no par
9.4 while
La instrucción while
permite ejecutar un bloque de código de forma repetida mientras una condición booleana sea True
. Es útil cuando no sabemos de antemano cuántas iteraciones haremos.
En este ejemplo estamos diciendo “voy a imprimir el contar cuando sea menor a 5”
# Ejemplo: contar de 0 a 4
= 0
contador while contador < 5:
print(f"Valor de contador: {contador}")
+= 1 contador
Valor de contador: 0
Valor de contador: 1
Valor de contador: 2
Valor de contador: 3
Valor de contador: 4
9.5 break y continue
La palabra clave break
se utiliza para salir del bucle prematuramente, mientras que continue
omite la iteración actual y pasa a la siguiente:
for i in numbers:
if i == 3:
break
print(i) # Termina al llegar a 3
1
2
for i in numbers:
if i == 3:
continue
print(i) # Omite el 3
1
2
4
5
6