En Python, el bucle for se utiliza para iterar (recorrer, repetir) sobre una secuencia:
Un rango de números (
range(...))Una lista (
[1, 2, 3])Una cadena de texto (
"Hola")
y ejecutar el mismo bloque de código para cada elemento de esa secuencia.
Podemos leerlo como: “para cada elemento en la secuencia, haz lo siguiente”.

Figure 1:Bucle for
Sintaxis básica¶
for elemento in secuencia:
# bloque de código a ejecutar para cada elementofor: palabra clave que indica el inicio del bucle.elemento: variable que va tomando, uno a uno, los valores de la secuencia.in: puede leerse como “en” o “pertenece a”.secuencia: conjunto de valores que vamos a recorrer (por ejemplo,range(1, 5)o una lista de nombres).El código con sangría (indentado) es el que se repite en cada vuelta del bucle.
Ejemplos:¶
Usando range() para repetir un número fijo de veces¶
La función range() sirve para generar una secuencia de números. Es muy útil cuando queremos repetir algo un número determinado de veces.
for i in range(1, 6):
print("Hola") Hola
Hola
Hola
Hola
Hola
range(1, 6)genera la secuencia:1, 2, 3, 4, 5(el 6 no se incluye).La variable
ivale 1 en la primera vuelta, 2 en la segunda, etc.Se imprimirá “Hola” 5 veces.
Recuerda:
range(inicio, fin)incluyeiniciopero no incluyefin, incluye hastafin - 1.
# Ejemplo: repetir un mensaje varias veces
for i in range(1, 6):
print("Repetición número", i)Repetición número 1
Repetición número 2
Repetición número 3
Repetición número 4
Repetición número 5
Recorrer listas con for¶
Un uso muy habitual del bucle for es recorrer los elementos de una lista.
frutas = ["manzana", "banana", "cereza"]
for fruta in frutas:
print("Me gusta la", fruta)Me gusta la manzana
Me gusta la banana
Me gusta la cereza
# Ejemplo: recorrer una lista de asignaturas
asignaturas = ["Matemáticas", "Física", "TIC", "Historia"]
for asignatura in asignaturas:
print("Este año cursas:", asignatura)Este año cursas: Matemáticas
Este año cursas: Física
Este año cursas: TIC
Este año cursas: Historia
Nota sobre nombres de variables¶
En los ejemplos se usan nombres como fruta o asignatura porque son descriptivos y ayudan a entender mejor el código.
En muchos libros y ejemplos verás que se usa simplemente i, j o k como contador, especialmente cuando sólo importa el número de iteración:
colores = ["rojo", "verde", "azul"]
for i in colores:
print("Me gusta el color", i)
Me gusta el color rojo
Me gusta el color verde
Me gusta el color azul
Recorrer cadenas de texto¶
Las cadenas de texto (str) también se pueden recorrer con un bucle for, letra a letra.
for letra in "Esternocleidomastoideo":
print(letra) E
s
t
e
r
n
o
c
l
e
i
d
o
m
a
s
t
o
i
d
e
o
En cada vuelta, la variable letra contiene un carácter de la cadena y lo mostramos por pantalla.
Esto es útil, por ejemplo, para contar vocales, buscar un carácter concreto, etc.
# Ejemplo: contar el número de letras "a" en una palabra
palabra = "programacion"
contador_a = 0
for letra in palabra:
if letra == "a":
contador_a += 1
print(f"La palabra '{palabra}' contiene {contador_a} letras 'a'.")La palabra 'programacion' contiene 2 letras 'a'.
Relación con otras estructuras de control¶
Un programa sin bucles ejecuta cada línea una sola vez.
Con
forpodemos repetir un bloque de código un número determinado de veces o una vez por cada elemento de una colección.Podemos combinar
forcon:Condicionales (
if,elif,else) para tomar decisiones dentro del bucle.
for numero in range(1, 11):
if numero % 2 == 0:
print(numero, "es par")
else:
print(numero, "es impar")
1 es impar
2 es par
3 es impar
4 es par
5 es impar
6 es par
7 es impar
8 es par
9 es impar
10 es par
Mini resumen¶
forsirve para recorrer secuencias (rangos, listas, cadenas...).La variable del
forva tomando cada valor de la secuencia.range(inicio, fin)genera números desdeiniciohastafin - 1.Es muy útil para repetir tareas y trabajar con colecciones de datos sin duplicar código.
En los próximos ejercicios podrás practicar el uso del bucle for con diferentes tipos de secuencias.