Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Bucle for

Departamento de Tecnología
IES Frei Martín Sarmiento

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”.

Python

Figure 1:Bucle for

Sintaxis básica

for elemento in secuencia:
    # bloque de código a ejecutar para cada elemento
  • for: 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 i vale 1 en la primera vuelta, 2 en la segunda, etc.

  • Se imprimirá “Hola” 5 veces.

Recuerda: range(inicio, fin) incluye inicio pero no incluye fin, incluye hasta fin - 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 for podemos repetir un bloque de código un número determinado de veces o una vez por cada elemento de una colección.

  • Podemos combinar for con:

    • 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

  • for sirve para recorrer secuencias (rangos, listas, cadenas...).

  • La variable del for va tomando cada valor de la secuencia.

  • range(inicio, fin) genera números desde inicio hasta fin - 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.