Mi Blog

No te olvides seguirme en Facebook.

Tan solo tienes que hacer click en Me Gusta

 

 

x

⋆ Cómo hacer bucles en Python

⋆ Cómo hacer bucles en Python

Los Bucles en Python, el igual que en otros lenguajes de programación, son uno de los pilares fundamentales que todo programador debe dominar a la perfección. En Python existen menos tipos de bucles que en otros lenguajes de programación, pero se pueden hacer todo tipo de operaciones. El concepto es exactamente el mismo en todos los lenguajes, por tanto, entender como funciona un bucle en un lenguaje sirve para todos los demás lenguajes, excepto el cambio de sintaxis.

Seguid leyendo si queréis aprender a realizar vuestros primeros bucles o loops en Python...

 

 

¿QUÉ ES UN BUCLE EN PROGRAMACIÓN?

Los bucles en Python (y en cualquier otro lenguaje de programación) son sumamente importantes. En este pequeño y sencillo tutorial, os voy a enseñar como utilizar los bucles en Python con algunos pequeños y sencillos ejemplos.

Los bucles permiten a los desarrolladores realizar una serie de acciones repetitivas o hasta que una condición se cumpla o deje de cumplirse. Son muy útiles para operaciones donde hay que repetir n veces un tipo de acción en concreto.

Existen básicamente 2 tipos de bucles en Python, for y while. 

Loops Python

 

 

Los bucles en python son muy sencillos de aprender

 

 

1.- ELEMENTOS NECESARIOS PARA ESTE TUTORIAL

  • Un equipo con Python instalado (en este caso 3.8.0)
  • Un editor de texto

 

 

2.- BUCLES WHILE

Al igual que en otros lenguajes de programación, uno de los bucles mas sencillos de entender y de trabajar con ellos es el bucle while. Lo que hace este bucle es, mientras que la expresión sea verdadera, se ejecutarán X líneas de código que queramos. La sintaxis es la siguiente:

while <expr>:
<statement(s)>

  

También podemos usar else para ejecutar otro código en caso de no cumplir la condición principal:

while <expr>:
<statement(s)>
else:
<additional_statement(s)>

 

 

En el ejemplo siguiente tenemos un array de películas donde calculamos la longitud con len(). Mientras que i sea menor que la longitud, mostraremos el nombre de la película:

peliculas = ["Trainspotting", "Star Wars", "Terremoto", "Ben-Hur"]
i = 0
while i < len(peliculas):
print (peliculas[(i)])
i = i + 1

 

 

La salida del código anterior es la siguiente:

Trainspotting
Star Wars
Terremoto
Ben-Hur

 

 

En el siguiente ejemplo, lo que haremos será que: mientras que la respuesta sea diferente de Salir, se nos va a preguntar por una palabra. Solo cuando la respuesta sea Salir, el programa saldrá:

while True:
respuesta = input("Escribe una palabra...")
if respuesta == "Salir":
break
print ("Tu respuesta ha sido", respuesta)

 

 

La ejecución del programa es la siguiente:

Escribe una palabra...hola
Tu respuesta ha sido hola
Escribe una palabra...prueba
Tu respuesta ha sido prueba
Escribe una palabra...Salir

 

 

En el siguiente ejemplo, lo que haremos será mostrar los números pares desde el 0 al 20. CUando lleguemos a 20, el programa finalizará:

contador = 0
while contador <= 20:
print (contador)
contador = contador + 2

 

 

La salida del código anterior es la siguiente:

0
2
4
6
8
10
12
14
16
18
20

 

 

 

 

3.- BUCLES FOR

El bucle for es algo diferente al bucle while. Lo que hace un bucle for es, para cada uno de los elementos que le pasemos al bucle, ejecutaremos N acciones. La sintaxis es la siguiente:

for i in <collection>
<loop body>

 

 

En el siguiente ejemplo, tenemos un array de marcas de coches y lo que haremos será recorrer cada uno de los elementos y mostrarlo:

marcas_coches = ["Ferrari", "Mazda", "Pontiac", "Ford"]
for marca in marcas_coches:
print (marca)

 

 

La salida del código anterior es la siguiente:

Ferrari
Mazda
Pontiac
Ford

 

 

En este otro ejemplo, tenemos un array de números y lo que haremos será sumarlos entre ellos, comenzando por el primero y hasta el último número:

numeros = [1,2,3,4,5,6,7,8,9,10]
suma = 0
for numero in numeros:
suma = suma + numero
print (suma)

 

 

La salida del código anterior es la siguiente:

55

 

 

En el siguiente ejemplo usaremos la función range para mostrar los números entre el 10 y el 20:

for i in range(10,21):
print (i)

 

 

La salida del código anterior es la siguiente:

10
11
12
13
14
15
16
17
18
19
20

 

 

En este otro ejemplo, mostraremos los números pares desde el 0 al 10 (el 2 final es el salto ó step):

for i in range(0,11,2):
print (i)

 

 

La salida del código anterior es la siguiente:

0
2
4
6
8
10

 

 

4.- BUCLES ANIDADOS

Los bucles anidados son bucles dentro de otros bucles. La sintaxis es la misma, pero se complica un poco mas la forma de verlos. En el siguiente ejemplo tenemos 2 arrays, uno de letras y otro de números. Para cada uno de los números, se recorrerá todo el segundo array de letras y se mostrará el resultado. Aquí está el código:

numeros = [1, 2, 3]
letras = ['a', 'b', 'c']

for numero in numeros:
for letra in letras:
print(numero, letra)

 

 

La salida del código anterior es la siguiente:

1 a
1 b
1 c
2 a
2 b
2 c
3 a
3 b
3 c

 

 

5.- BREAK Y CONTINUE EN BUCLES

Aunque no son realmente ningún tipo de bucle, break y continue se suelen utilizar dentro de los bucles vistos anteriormente para obligar al bucle a seguir o salirse de la ejecución. En el siguiente ejemplo, recorreremos todos los números desde el 1 al 10, pero el programa finalizará cuando el número tenga el valor de 7:

for i in range(1,10):
if i == 7:
break
print (i)

 

 

La salida del código anterior es la siguiente:

1
2
3
4
5
6
 

En este otro ejemplo, haremos lo mismo pero usando continue. Lo que hará el programa es que, cuando el valor sea = a 5, el programa saltará de nuevo al bucle for sin ejecutar la última linea de print, pero sin salir del bucle:

for i in range(1,10):
if i == 5:
continue
print (i)

 

 

La salida del código anterior es la siguiente:

1
2
3
4
6
7
8
9
 

 

 

ENJOY!


Raúl Prieto Fernández

Sitio Web: raulprietofernandez.net

Si quieres ir rápido, ve solo. Si quieres llegar lejos, ve acompañado.

Escribir un comentario

     

Código de seguridad
Refescar