Python For Loop: una guía concisa para dominar la iteración

Python For Loop: una guía concisa para dominar la iteración

Uno de los conceptos más interesantes en los lenguajes de programación son los bucles. Imagina que te enfrentas a una tarea. Es simple pero repetitivo, como contar del 1 al 100. Ahora, puede hacerlo manualmente, un número a la vez. Pero eso llevaría mucho tiempo y no sería particularmente eficiente. Aquí es donde entran los bucles en la programación.

Un bucle es una estructura de control que le permite repetir un conjunto de instrucciones hasta que se cumpla una determinada condición. La condición podría ser cualquier cosa: un cierto número de repeticiones, un estado particular de los datos o incluso un evento externo. Un Python For Loop es un tipo especial de bucle que se utiliza cuando conoce las repeticiones exactas de un bucle.

Python For Loop: una guía concisa para dominar la iteración

Utiliza bucles for en su código para simplificar el proceso de iteración sobre una secuencia o colección de elementos. Puede ser una lista, una cadena, un diccionario, un conjunto o cualquier otro objeto iterable en Python .

Mediante el uso de un bucle for, puede ejecutar un bloque de código para cada elemento de la secuencia. Por ejemplo, si necesita imprimir todos los elementos de una lista, en lugar de escribir una declaración de impresión para cada elemento, puede usar un bucle for. Esto hace que su código sea más eficiente, legible y menos propenso a errores.

Antes de comenzar a escribir bucles for, debe comprender los conceptos básicos. En este artículo, veremos la sintaxis de los bucles for de Python, la terminología utilizada al trabajar con ellos y cómo usarlos en diferentes escenarios.

¡Entremos en ello!

Tabla de contenido

¿Cuál es la sintaxis de Python For Loops?

En Python, los bucles for se utilizan para iterar sobre objetos iterables. La sintaxis básica de un bucle for es la siguiente:

for variable in iterable:
    # code to execute for each item

En esta sintaxis, 'variable' es el nombre que elige para el elemento actual en la iteración. 'Iterable' es la secuencia o colección de elementos sobre los que desea iterar.

El código dentro del ciclo, indicado aquí como '# código para ejecutar para cada elemento', es la acción que desea realizar para cada elemento en el iterable.

El siguiente ejemplo muestra un bucle for básico en Python:

cities = ['New York', 'London', 'Paris', 'Tokyo']

for city in cities:
    print(city)

En el ejemplo anterior, 'ciudad' es la variable y 'ciudades' es iterable. El código dentro del ciclo es print(city), que imprime cada ciudad en la lista.

Python For Loop: una guía concisa para dominar la iteración

Python iterables y objetos iterables

Otro concepto crucial para comprender cuando se trabaja con bucles es el concepto de iterables y objetos iterables.

En Python, un iterable es cualquier objeto capaz de devolver sus elementos uno a la vez. Esto significa que puede pasar por el objeto iterable usando un método como un bucle.

Los ejemplos comunes de objetos iterables que encontrará incluyen listas , cadenas , tuplas y diccionarios .

Por ejemplo, cuando crea una lista de números como [1, 2, 3, 4, 5], puede iterar sobre cada número de la lista. Cada número es un elemento de la lista iterable.

De manera similar, si tiene una cadena como 'hola', puede iterar sobre cada carácter de la cadena. En este caso, la cadena es iterable, y cada carácter ('h', 'e', ​​'l', 'l', 'o') es un elemento de iterable.

A continuación, encontrará algunos ejemplos del uso de bucles for con diferentes iterables.

1. Recorrer una lista con un bucle For de Python

En Python, una lista es un tipo de estructura de datos que puede contener una colección ordenada de elementos, lo que significa que puede almacenar todo tipo de objetos: enteros, flotantes, cadenas e incluso otras listas u objetos complejos.

Para recorrer una lista con un bucle for, puede usar el siguiente código:

fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
    print(fruit)

Este código imprimirá todas las frutas en la lista de frutas como se muestra a continuación:

Python For Loop: una guía concisa para dominar la iteración

2. Recorriendo una Tupla con un Python For Loop

Una tupla en Python es una colección de objetos ordenados e inmutables. Esto significa que, una vez que se crea una tupla, no puede cambiar su contenido.

Para mirar a través de una tupla con el bucle for, puede usar el siguiente código de Python:

colors = ('red', 'green', 'blue')

for color in colors:
    print(color)

El ciclo for recorrerá todos los elementos de la tupla y los imprimirá en la pantalla como se muestra en la imagen a continuación:

Python For Loop: una guía concisa para dominar la iteración

3. Recorrer un diccionario con un bucle For de Python

Un diccionario en Python es una colección desordenada de datos almacenados como una clave y un valor. Esto también se conoce como par clave-valor.

Para recorrer un diccionario con el bucle for, puede usar el siguiente código de Python:

student = {'name': 'John', 'age': 24, 'course': 'Computer Science'}

for key, value in student.items():
    print(key, value)

El ciclo for iterará a través de todos los pares clave-valor en el diccionario y los imprimirá en la pantalla como se muestra a continuación:

4. Bucle a través de una cadena con un Python For Loop

Una cadena en Python es una secuencia de caracteres. Las cadenas se utilizan en Python para registrar información textual, así como colecciones arbitrarias de bytes (como el contenido de un archivo de imagen).

Para recorrer una cadena en Python usando el bucle for, puede usar el código que se proporciona a continuación:

greeting = "Hello, world!"
for char in greeting:
    print(char)

El ciclo for imprimirá cada alfabeto en la cadena en la pantalla como se muestra a continuación:

Python For Loop: una guía concisa para dominar la iteración

Los ejemplos anteriores muestran cómo los bucles son útiles al iterar sobre diferentes tipos de datos. También puede controlar la funcionalidad de sus bucles for utilizando funciones y sentencias dentro de su bucle.

Veamos algunas funciones y sentencias clave que se usan con frecuencia con bucles for en la siguiente sección.

Funciones clave y sentencias en Python For Loops

Cuando usa bucles for, las funciones y las declaraciones pueden mejorar su control sobre el bucle y hacer que su código sea más eficiente y fácil de leer.

Hemos enumerado las funciones clave y las declaraciones utilizadas en los bucles a continuación:

1. Cómo usar la función Range() con un bucle For de Python

La función range() le permite generar una secuencia de números. Generalmente se usa para iterar un número específico de veces.

La sintaxis básica es:

for i in range(start, stop, step):
  # your code here
  • start : un parámetro opcional que especifica el punto de partida; por defecto, es 0.

  • stop : un parámetro requerido que define el punto final (exclusivo).

  • paso : un parámetro opcional que indica el incremento, con un valor predeterminado de 1.

Para darle una comprensión clara de la función de rango, eche un vistazo al siguiente ejemplo donde imprimimos números del 1 al 5 usando la función de rango con un bucle for:

for i in range(5):
  print(i)

Python For Loop: una guía concisa para dominar la iteración

2. Cómo usar la instrucción Break con un bucle For de Python

La instrucción break le permite salir de un ciclo for cuando se cumple una determinada condición. Cuando se alcanza la palabra clave break en el cuerpo del bucle, el bucle se detiene inmediatamente.

El siguiente es un ejemplo del bucle for con una instrucción break:

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

Python For Loop: una guía concisa para dominar la iteración

Este código es un ciclo que va de 0 a 9. Si el número actual es 5, detiene inmediatamente el ciclo usando break . Entonces, solo imprime los números del 0 al 4. Cuando llega al 5, se detiene y no imprime más números.

3. Cómo utilizar la instrucción Continue con un bucle For de Python

La declaración de continuación se usa para omitir la iteración actual y saltar a la siguiente.

El siguiente es un ejemplo de una declaración de continuación con bucle for:

for i in range(5):
  if i == 3:
    continue
  print(i)

El ciclo itera de 0 a 4. Si el número actual es 3, lo omitimos antes de completar el resto del ciclo para esa iteración usando continuar . Esto significa que imprime todos los números del 0 al 4, excepto el 3.

Python For Loop: una guía concisa para dominar la iteración

Observe en la imagen de arriba que el número 3 se omite debido a la declaración de continuación .

4. Cómo usar la declaración de pase

La declaración de aprobación es un marcador de posición que intencionalmente no hace nada. Se puede usar cuando necesita la estructura de bucle pero aún no tiene ningún código específico para ejecutar dentro de ella.

El siguiente es un ejemplo de una sentencia pass con un bucle for:

for i in range(5):
  pass

Este bucle no generará nada, ya que la declaración de paso es un marcador de posición para el código futuro. Los bucles son flexibles y se pueden ajustar para adaptarse a cualquier caso de uso, como el uso de bucles con el bloque de código else .

Si desea obtener práctica práctica con bucles for, vea el siguiente video:

A medida que comience a escribir bucles for, eventualmente querrá saltar a las técnicas avanzadas de bucles for. El conocimiento de las técnicas avanzadas le permitirá escribir bucles for más eficientes para casi cualquier caso de uso.

¡Veamos algunas de las técnicas avanzadas en bucles for en la siguiente sección!

3 técnicas avanzadas usando Python For Loops

Como programador de Python, a menudo necesita lidiar con colecciones de elementos, como listas o cadenas, y realizar operaciones en cada elemento. Para realizar estas operaciones, deberá tener un conocimiento básico de las técnicas avanzadas en bucles for.

En esta sección, exploraremos algunas técnicas avanzadas para usar bucles for en Python. Cubriremos los bucles anidados, la comprensión de listas y la función enumerate().

1. Cómo usar Python anidado para bucles

Hay momentos en los que necesita recorrer múltiples dimensiones de datos, como una matriz o una lista de listas. En tales casos, puede usar bucles anidados, que es un bucle dentro de otro bucle. Un bucle anidado le permite atravesar múltiples dimensiones de datos de manera efectiva.

El siguiente es un ejemplo de un bucle for anidado:

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

for row in matrix:
    for val in row:
        print(val, end=' ')
    print()

En este código, estamos usando un ciclo anidado para imprimir cada número en una matriz. El bucle exterior pasa por cada fila y el bucle interior pasa por cada número de esa fila.

Después de imprimir cada fila, comenzamos una nueva línea. En resumen, estamos imprimiendo toda la matriz fila por fila.

Python For Loop: una guía concisa para dominar la iteración

2. Cómo usar Python For Loops para la comprensión de listas

Si está creando una nueva lista basada en una lista existente u otra iterable, puede usar la comprensión de listas. Le permite crear una nueva lista aplicando una expresión a cada elemento en un iterable, todo en una sola línea de código.

La sintaxis general de las listas por comprensión es:

[expression for variable in iterable if condition]

Suponga que desea crear una lista de cuadrados para un rango de números, puede usar la siguiente lista de comprensión:

squares = [x ** 2 for x in range(1, 11)]
print(squares)

Este código crea una lista de cuadrados para los números del 1 al 10 usando una sola línea de código.

Python For Loop: una guía concisa para dominar la iteración

3. Cómo usar la función Enumerate()

Cuando está recorriendo una lista o cadena y necesita saber el índice del elemento actual, usa la función enumerate() . Devuelve cada elemento junto con su índice, lo que facilita el manejo de la posición de los elementos.

El siguiente es un ejemplo de función de enumeración con un bucle for:

fruits = ['apple', 'banana', 'cherry']

for idx, fruit in enumerate(fruits):
    print(f"{idx}: {fruit}")

En este código, recorremos la lista de frutas, pero también hacemos un seguimiento del índice de cada elemento mediante la función de enumeración , que devuelve cada elemento de la lista junto con su índice.

Entonces, para cada iteración del bucle, idx es el índice y fruit es el elemento. Luego, imprimimos el índice seguido de la fruta. Esto nos da una lista numerada de frutas.

Python For Loop: una guía concisa para dominar la iteración

Ahora que ha explorado las técnicas avanzadas en bucles for, puede comenzar a ver cuán flexibles pueden ser los bucles en el manejo de diferentes escenarios. Pero, como con cualquier herramienta, es esencial saber cuándo usarla y cuándo otra herramienta podría ser más adecuada.

Con esto en mente, cambiemos nuestro enfoque a comparar bucles for con bucles while. Esto lo ayudará a decidir qué tipo de bucle es el más adecuado para su situación de codificación específica.

Bucle for vs Bucle while

En Python, los bucles for y while tienen diferentes propósitos.

Los bucles for se utilizan para iterar sobre secuencias, como listas o tuplas, y tienen un rango de iteración definido.

Mientras que los bucles, por otro lado, continúan ejecutándose mientras se cumpla una determinada condición.

# For loop example
for item in sequence:
    # Code to execute for each item in sequence

# While loop example
while condition:
    # Code to execute while condition is true

Suponga que desea imprimir los primeros 5 números a partir de 0.

Usando un ciclo for, escribirías:

for i in range(5):
    print(i)

El bucle for es sencillo cuando conoce el número exacto de iteraciones de antemano, como en este caso, donde sabe que desea imprimir 5 números.

Por otro lado, usando un ciclo while, escribirías:

i = 0
while i < 5:
    print(i)
    i += 1

En el ciclo while, comienzas con una condición inicial (i < 5). El bucle sigue ejecutándose hasta que la condición deja de ser cierta. Debe incrementar i en el cuerpo del bucle, o se ejecutaría para siempre.

Python For Loop: una guía concisa para dominar la iteración

El ciclo for es más simple y menos propenso a errores para esta tarea. Pero el bucle while ofrece más flexibilidad para situaciones en las que no se conoce de antemano el número de iteraciones.

Por ejemplo, considere un escenario en el que le solicita al usuario que ingrese hasta que ingrese un número válido. No sabe cuántas veces tendrá que preguntar, por lo que un ciclo while es apropiado en este caso:

while True:
    user_input = input("Please enter a number: ")
    if user_input.isdigit():
        print("Thank you!")
        break
    else:
        print("Invalid input. Try again.")

Python For Loop: una guía concisa para dominar la iteración

En este código, el ciclo while continúa solicitando al usuario que ingrese hasta que ingrese un número válido. La función isdigit() verifica si la entrada es un número.

Si es así, se imprime un mensaje y se sale del ciclo usando la instrucción break. Si no es un número, se imprime un mensaje de error y el ciclo continúa.

Pensamientos finales

Los bucles for son una herramienta esencial en su caja de herramientas de programación. Proporcionan una manera de realizar tareas repetitivas de manera eficiente. Al comprender los bucles for, obtiene la capacidad de manipular datos, automatizar tareas y resolver problemas complejos con solo unas pocas líneas de código.

Al dominar los bucles for, puede hacer que su código sea más legible, más efectivo y más Pythonic. La práctica es la clave para sentirse cómodo con este constructo. Con el conocimiento adquirido de esta guía, ¡está bien equipado para enfrentar una amplia gama de desafíos de programación usando Python para bucles!


Qué es uno mismo en Python: ejemplos del mundo real

Qué es uno mismo en Python: ejemplos del mundo real

Qué es uno mismo en Python: ejemplos del mundo real

Cómo guardar y cargar un archivo RDS en R

Cómo guardar y cargar un archivo RDS en R

Aprenderá a guardar y cargar objetos desde un archivo .rds en R. Este blog también cubrirá cómo importar objetos desde R a LuckyTemplates.

Revisión de los primeros N días hábiles: una solución de lenguaje de codificación DAX

Revisión de los primeros N días hábiles: una solución de lenguaje de codificación DAX

En este tutorial del lenguaje de codificación DAX, aprenda a usar la función GENERAR y a cambiar dinámicamente el título de una medida.

Showcase Insights utilizando la técnica de elementos visuales dinámicos de subprocesos múltiples en LuckyTemplates

Showcase Insights utilizando la técnica de elementos visuales dinámicos de subprocesos múltiples en LuckyTemplates

Este tutorial cubrirá cómo usar la técnica de elementos visuales dinámicos de subprocesos múltiples para crear información a partir de visualizaciones de datos dinámicos en sus informes.

Introducción al contexto de filtro en LuckyTemplates

Introducción al contexto de filtro en LuckyTemplates

En este artículo, repasaré el contexto del filtro. El contexto del filtro es uno de los temas principales que cualquier usuario de LuckyTemplates debería conocer inicialmente.

Los mejores consejos para usar las aplicaciones en el servicio en línea de LuckyTemplates

Los mejores consejos para usar las aplicaciones en el servicio en línea de LuckyTemplates

Quiero mostrar cómo el servicio en línea de LuckyTemplates Apps puede ayudar a administrar diferentes informes e información generada a partir de varias fuentes.

Analice los cambios en el margen de beneficio a lo largo del tiempo: análisis con LuckyTemplates y DAX

Analice los cambios en el margen de beneficio a lo largo del tiempo: análisis con LuckyTemplates y DAX

Aprenda a calcular los cambios de su margen de beneficio utilizando técnicas como la bifurcación de medidas y la combinación de fórmulas DAX en LuckyTemplates.

Ideas de materialización para cachés de datos en DAX Studio

Ideas de materialización para cachés de datos en DAX Studio

Este tutorial analizará las ideas de materialización de cachés de datos y cómo afectan el rendimiento de DAX al proporcionar resultados.

Informes comerciales con LuckyTemplates

Informes comerciales con LuckyTemplates

Si todavía usa Excel hasta ahora, este es el mejor momento para comenzar a usar LuckyTemplates para sus necesidades de informes comerciales.

¿Qué es la puerta de enlace de LuckyTemplates? Todo lo que necesitas saber

¿Qué es la puerta de enlace de LuckyTemplates? Todo lo que necesitas saber

¿Qué es la puerta de enlace de LuckyTemplates? Todo lo que necesitas saber