Saltar al contenido principal

Guía para principiantes de Python para bucles: Dominar para i en rango

En el ámbito de la programación en Python, dominar los bucles es crucial. Este tutorial arroja luz sobre el bucle Python for i in range, una construcción fundamental en Python.
Actualizado 16 ene 2025  · 5 min de lectura

En el ámbito de la programación en Python, dominar los bucles es crucial. Este tutorial arroja luz sobre el bucle Python for i in range, una construcción fundamental en Python que simplifica las tareas repetitivas. Nos embarcaremos en un viaje para comprender su sintaxis, versatilidad y aplicaciones prácticas.

La esencia de for Bucles en Python

Un bucle for en Python es una estructura de control utilizada para iterar sobre una secuencia (como una lista, tupla, diccionario o cadena). La belleza del bucle for de Python reside en su capacidad para iterar directamente sobre los elementos de una secuencia de forma clara y concisa.

Sintaxis de la for Loop

for item in sequence:
    # perform actions

Aquí, el elemento representa cada elemento de la secuencia, y el bucle ejecuta el bloque de código de cada elemento.

Profundizar en la función range() de Python

La función range() en Python es fundamental para generar una secuencia de números, ofreciendo un mayor control y flexibilidad en los bucles.

La flexibilidad de range()

Uso de un solo argumento

  • Genera números de 0 a n-1.
  • Ejemplo: range(5) produce 0, 1, 2, 3, 4.

Uso de doble argumento

  • Especifica el inicio y el final de la secuencia.
  • Ejemplo: rango(10, 15) da como resultado 10, 11, 12, 13, 14.

Uso del triple argumento

  • Añade la posibilidad de especificar el paso para el incremento.
  • Ejemplo: range(1, 20, 2) da 1, 3, 5, ..., 19.

Aplicaciones prácticas y ejemplos

Recorrer colecciones

1. Cuerdas: Iterar sobre cada carácter.

for char in "Hello":
    print(char)
H
e
l
l
o

Este bucle itera sobre cada carácter de la cadena "Hola". El bucle for asigna sucesivamente cada carácter ("H", "e", "l", "l", "o") a la variable char y lo imprime. Así, la salida será cada carácter de "Hola" en una nueva línea.

2. Listas: Recorre los elementos de la lista.

for num in [1, 2, 3]:
    print(num)
1
2
3

Aquí, el bucle recorre la lista [1, 2, 3]. En cada iteración, num toma el valor del siguiente elemento de la lista, empezando por 1, luego 2 y finalmente 3. Cada número se imprime, con lo que los números 1, 2 y 3 aparecen cada uno en una línea nueva.

3. Diccionarios: Claves de acceso y valores.

for key, value in {'a': 1, 'b': 2}.items():
    print(key, value)
a 1
b 2

Este bucle itera sobre un diccionario que contiene dos pares clave-valor ('a': 1 y "b": 2). El método .items() devuelve un objeto vista que muestra una lista de los pares de tuplas clave-valor de un diccionario. En cada iteración, a clave y valor se les asigna la clave y el valor del siguiente elemento del diccionario, que luego se imprimen.

Mecanismos de control de bucle

1. La declaración break: Termina el bucle prematuramente.

for i in range(10):
    if i == 5:
        break

Este código itera de 0 a 9 (como genera range(10)). Cuando el valor de i llega a 5, se cumple la condición de la sentencia if y se activa la sentencia break. Esto detiene el bucle, aunque no haya iterado sobre todos los valores hasta el 9.

2. La declaración continue: Salta la iteración actual.

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)
1
3
5
7
9

Este bucle también itera de 0 a 9. Sin embargo, la sentencia if comprueba si i es un número par (esto es lo que hace i % 2 == 0: comprueba si el resto al dividir i por 2 es 0). Si es par, se ejecuta la sentencia continue, que se salta el resto del cuerpo del bucle para esa iteración. Por lo tanto, sólo se imprimen los números impares

Técnicas avanzadas con for Bucles

1. Bucles anidados

Este es un ejemplo de bucles anidados, en el que un bucle está dentro de otro. El bucle exterior (for i in range(3)) recorre los números 0, 1 y 2. En cada iteración del bucle exterior, el bucle interior (for j in range(3)) también itera a través de los números 0, 1 y 2. La sentencia print(i, j) se ejecuta para cada combinación de i y j.

for i in range(3):
    for j in range(3):
        print(i, j)
0 0
0 1
0 2
1 0
1 1
1 2
2 0
2 1
2 2

La salida será una serie de pares que representan todas las combinaciones de i y j en el intervalo de 0 a 2.

2. Bucle con Enumerar

La función enumerar añade un contador a un iterable y lo devuelve en forma de objeto enumerado. Este objeto puede utilizarse directamente en los bucles de for. En este ejemplo, el bucle for se utiliza con enumerar en una lista ['a', 'b', 'c'].

for index, value in enumerate(['a', 'b', 'c']):
    print(index, value)
0 a
1 b
2 c

La función enumerar añade un índice a cada elemento de la lista, empezando por 0 por defecto. A continuación, el bucle itera sobre este objeto enumerar, desempaquetando cada elemento en índice y valor. El índice es el índice de cada elemento, y el valor es el elemento correspondiente de la lista. Así, la salida será una serie de líneas con el índice y el valor.

Estos ejemplos ilustran cómo pueden utilizarse los bucles anidados para realizar iteraciones complejas y cómo puede utilizarse enumerar para seguir fácilmente el índice de los elementos de un bucle.

Cómo for Los bucles se utilizan en la Ciencia de Datos

El bucle for es un concepto crucial en la programación y el análisis de datos en Python. Tiene una amplia gama de aplicaciones, como iterar sobre listas y matrices, lo que simplifica las tareas de manipulación de datos. Con frecuencia utilizo for bucles, en particular bucles anidados, para gestionar eficazmente estructuras de datos multidimensionales, un paso esencial en la creación de algoritmos de aprendizaje automático. Además, los científicos de datos suelen combinar los bucles for con lógica condicional para el procesamiento de datos complejos, como la agregación de datos, por ejemplo el cálculo de la media de una lista de números.

Sin embargo, los bucles for pueden no ser la mejor opción cuando se trabaja con grandes conjuntos de datos y algoritmos de aprendizaje profundo. Por eso tenemos bibliotecas como NumPy, pandas y PyTorch, que están optimizadas para operaciones vectorizadas, lo que las hace más eficientes para la manipulación de datos a gran escala.

Conclusión: Adoptar la eficiencia del bucle

En conclusión, el bucle for de Python es una herramienta indispensable para los programadores. Su sencillez, unida a la potencia de la función range(), la hace ideal para una gran variedad de tareas iterativas en ciencia de datos y programación general. A medida que practiques y apliques estos conceptos, verás que tu código Python es cada vez más eficiente y expresivo.

Puedes leer más sobre los bucles While en nuestro tutorial completo y explorar éste y otros conceptos en nuestro curso Python Intermedio.


Abid Ali Awan's photo
Author
Abid Ali Awan
LinkedIn
Twitter

Soy un científico de datos certificado que disfruta creando aplicaciones de aprendizaje automático y escribiendo blogs sobre ciencia de datos. Actualmente me centro en la creación de contenidos, la edición y el trabajo con grandes modelos lingüísticos.

Temas

¡Aprende más Python! 

Certificación disponible

curso

Python intermedio

4 hr
1.2M
Mejora tus conocimientos de ciencia de datos creando visualizaciones con Matplotlib y manipulando DataFrames con pandas.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow