El bucle for en Python es una función de iteración. Si tienes un objeto de secuencia como una lista, puedes usar el bucle for para iterar sobre los elementos contenidos dentro de la lista.
La funcionalidad del bucle for no es muy diferente de lo que se ve en varios otros lenguajes de programación.
En este artículo, exploraremos el bucle for en Python en detalle y aprenderemos a iterar sobre diferentes secuencias, incluidas listas, tuplas y más. Además, aprenderemos a controlar el flujo del bucle usando las declaraciones break y continue.
Cuándo usar el bucle for
En cualquier momento que necesites repetir un bloque de código una cantidad fija de veces. Si no conoces la cantidad de veces que debe repetirse, utiliza en su lugar una declaración de “while loop”.
Sintaxis del bucle for en Python
La sintaxis básica del bucle for en Python se parece algo a la que se menciona a continuación.
Sintaxis detallada del bucle for en Python
- La primera palabra de la declaración comienza con la palabra clave “for” que significa el inicio del bucle for.
- Luego tenemos la variable del iterador que itera sobre la secuencia y puede ser usada dentro del bucle para realizar varias funciones
- Lo siguiente es la palabra clave “in” en Python que indica a la variable del iterador que haga un bucle por los elementos dentro de la secuencia
- Y finalmente, tenemos la variable de secuencia que puede ser una lista, una tupla, o cualquier otro tipo de iterador.
- La parte de las declaraciones del bucle es donde puedes manipular la variable del iterador y realizar varias funciones
Imprimir letras individuales de una cadena utilizando el bucle for
La cadena en Python es una secuencia de caracteres. Si dentro de alguna de tus aplicaciones de programación necesitas recorrer los caracteres de una cadena individualmente, puedes usar el bucle for aquí.
Así es como funcionaría para ti.
Salida:
La razón por la que este bucle funciona es porque Python considera una “cadena” como una secuencia de caracteres en lugar de mirar la cadena como un todo.
Usando el bucle for para iterar sobre una lista o tupla de Python
Las listas y tuplas son objetos iterables. Veamos cómo podemos iterar sobre los elementos dentro de estos objetos ahora.
Salida:
Ahora, avancemos y trabajemos en iterar sobre los elementos de una tupla aquí.
Anidando bucles for en Python
Cuando tenemos un bucle for dentro de otro bucle for, se llama un bucle for anidado. Hay múltiples aplicaciones de un bucle for anidado.
Considera el ejemplo de lista anterior. El bucle for imprime palabras individuales de la lista. ¿Pero qué pasa si queremos imprimir los caracteres individuales de cada una de las palabras dentro de la lista en su lugar?
Aquí es donde funciona mejor un bucle for anidado. El primer bucle (bucle padre) recorrerá las palabras una por una. El segundo bucle (bucle hijo) recorrerá los caracteres de cada una de las palabras.
Salida
A nested loop is structurally similar to nested if
statements
Bucle for de Python con la función range()
El rango de Python es una de las funciones integradas. Cuando deseas que el bucle for se ejecute un número específico de veces, o necesitas especificar un rango de objetos para imprimir, la función de rango funciona realmente bien.
Al trabajar con range()
, puedes pasar entre 1 y 3 argumentos enteros:
start
indica el valor entero desde el cual comienza la secuencia, si no se incluye, entoncesstart
comienza en 0stop
siempre es requerido y es el entero hasta el cual se cuenta pero no se incluyestep
establece cuánto aumentar (o disminuir en el caso de números negativos) en la siguiente iteración, si se omite, entoncesstep
se establece por defecto en 1
Considera el siguiente ejemplo donde quiero imprimir los números 1, 2 y 3:
La función range también toma otro parámetro además del inicio y el fin. Este es el parámetro step. Le dice a la función range cuántos números omitir entre cada conteo.
En el siguiente ejemplo, he utilizado el número 3 como el paso y puedes ver que los números de salida son el número anterior + 3.
También podemos usar un valor negativo para nuestro argumento step
para iterar hacia atrás, pero tendremos que ajustar nuestros argumentos start
y stop
en consecuencia:
Aquí, 100 es el valor start
, 0 es el valor stop
, y -10
es el rango, por lo que el bucle comienza en 100 y termina en 0, disminuyendo en 10 en cada iteración. Esto ocurre en la salida:
Output100
90
80
70
60
50
40
30
20
10
Cuando se programa en Python, los bucles for
a menudo hacen uso del tipo de secuencia range()
como sus parámetros para la iteración.
Declaración break con bucle for
La declaración break se utiliza para salir del bucle for prematuramente. Se utiliza para romper el bucle for cuando se cumple una condición específica.
Digamos que tenemos una lista de números y queremos verificar si un número está presente o no. Podemos iterar sobre la lista de números y si se encuentra el número, salir del bucle porque no necesitamos seguir iterando sobre los elementos restantes.
En este caso, usaremos la condición if else de Python junto con nuestro bucle for.
La declaración continue con bucle for
Podemos usar declaraciones continue dentro de un bucle for para omitir la ejecución del cuerpo del bucle for para una condición específica.
Digamos que tenemos una lista de números y queremos imprimir la suma de los números positivos. Podemos usar la declaración continue para omitir el bucle for para los números negativos.
Bucle for de Python con un bloque else
Podemos usar un bloque else con un bucle for de Python. El bloque else se ejecuta solo cuando el bucle for no es terminado por una declaración break.
Digamos que tenemos una función para imprimir la suma de los números solo si todos los números son pares.
Podemos usar la declaración break para terminar el bucle for si hay un número impar presente. Podemos imprimir la suma en la parte else para que se imprima solo cuando el bucle for se ejecute normalmente.
Bucles For usando Tipos de Datos Secuenciales
Las listas y otros tipos de secuencias de datos también se pueden aprovechar como parámetros de iteración en bucles for
. En lugar de iterar a través de un range()
, puedes definir una lista y iterar a través de esa lista.
Asignaremos una lista a una variable y luego iteraremos a través de la lista:
En este caso, estamos imprimiendo cada elemento de la lista. Aunque usamos la variable shark
, podríamos haber llamado a la variable con cualquier otro nombre de variable válido y obtendríamos la misma salida:
Outputhammerhead
great white
dogfish
frilled
bullhead
requiem
La salida anterior muestra que el bucle for
iteró a través de la lista e imprimió cada elemento de la lista por línea.
Las listas y otros tipos de datos basados en secuencias como cadenas y tuplas son comunes de usar con bucles porque son iterables. Puedes combinar estos tipos de datos con range()
para agregar elementos a una lista, por ejemplo:
Output['hammerhead', 'great white', 'dogfish', 'frilled', 'bullhead', 'requiem', 'shark', 'shark', 'shark', 'shark', 'shark', 'shark']
Aquí, hemos agregado una cadena de marcador de posición 'shark'
para cada elemento de la longitud de la lista sharks
.
También puedes usar un bucle for
para construir una lista desde cero:
En este ejemplo, la lista enteros
se inicializa vacía, pero el bucle for
llena la lista de la siguiente manera:
Output[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
De manera similar, podemos iterar a través de cadenas:
OutputS
a
m
m
y
Iterar a través de tuplas se hace en el mismo formato que iterar a través de listas o cadenas arriba.
Al iterar a través de un diccionario, es importante tener en cuenta la estructura clave : valor para asegurarse de que está llamando al elemento correcto del diccionario. Aquí hay un ejemplo que llama tanto a la clave como al valor:
Outputname: Sammy
animal: shark
location: ocean
color: blue
Cuando se utilizan diccionarios con bucles for
, la variable de iteración corresponde a las claves del diccionario, y variable_diccionario[variable_iteración]
corresponde a los valores. En el caso anterior, la variable de iteración clave
se usó para representar la clave, y tiburon_sammy[clave]
se usó para representar los valores.
Los bucles son frecuentemente utilizados para iterar y manipular tipos de datos secuenciales.
Conclusión
El bucle for en Python es muy similar a otros lenguajes de programación. Podemos usar las declaraciones break y continue con el bucle for para alterar la ejecución. Sin embargo, en Python, también podemos tener un bloque else opcional en el bucle for.
I hope you have gained some interesting ideas from the tutorial above. If you have any questions, let us know in the comments below.
Desde aquí, puedes continuar aprendiendo sobre bucles leyendo tutoriales sobre bucles while y declaraciones break, continue y pass.
Para trabajar con bucles for
en proyectos, sigue los siguientes tutoriales:
Source:
https://www.digitalocean.com/community/tutorials/how-to-construct-for-loops-in-python-3