07. Python: ciclos (ejemplos)

Publicado por

En Python se pueden utilizar dos tipos de ciclos: for y while. Recordemos que los ciclos se utilizan cuando es necesario ejecutar un bloque de instrucciones varias veces, hasta que, o mientras que, se cumpla una condición dada.

For

Los ciclos for permiten ejecutar una o varias instrucciones de forma iterativa, una vez por cada elemento en la colección.

Las colecciones pueden ser de varios tipos, el for puede recibir una colección predefinida o directamente de la salida de una función.

El siguiente fragmento de código es utilizado para iterar a través de un rango del 1 al 10.

>>> for contador in range(1,10):
...     print contador,
...
1 2 3 4 5 6 7 8 9
>>>

Para iterar sobre una lista.

>>> numeros = [0, 1, 2, 3, 4, 5]
>>> for numero in numeros:
...     print numero,
...
0 1 2 3 4 5
>>>

Si se quiere iterar sobre un diccionario.

>>> frutas = {'Fresa':'roja', 'Limon':'verde', 'Papaya':'naranja', 'Manzana':'amarilla', 'Guayaba':'rosa'}
>>> for nombre, color in frutas.items():
...     print nombre, "es de color", color
...
Fresa es de color roja
Limon es de color verde
Manzana es de color amarilla
Papaya es de color naranja
Guayaba es de color rosa

Otra forma de iterar un diccionario.

>>> frutas = {'Fresa':'roja', 'Limon':'verde', 'Papaya':'naranja', 'Manzana':'amarilla', 'Guayaba':'rosa'}
>>> for llave in frutas:
...     print llave, 'es de color', frutas[llave]
...
Fresa es de color roja
Limon es de color verde
Manzana es de color amarilla
Papaya es de color naranja
Guayaba es de color rosa

While

El ciclo while permite ejecutar un bloque de instrucciones mientras se cumpla la condición dada. Primero comprueba que en efecto se cumple la condición dada y entonces, ejecuta el segmento de código correspondiente hasta que la condición no se cumpla.

Para imprimir una serie de números del 0 al 10.

>>> numero = 0
>>> while numero <= 10:
...     print numero
...     numero += 1
...
0
1
2
3
4
5
6
7
8
9
10

Este código sirve para validar la entrada de un dato, mientras no reciba entrada seguirá esperando por ella.

>>> nombre = ''
>>> while not nombre:
...     nombre = raw_input('Escribe tu nombre: ')
...
Escribe tu nombre:
Escribe tu nombre:
Escribe tu nombre:
Escribe tu nombre:
Escribe tu nombre:
Escribe tu nombre: Miriam

Este código se repetirá mientras reciba una entrada, en caso contrario terminará.

>>> while True:
...     entrada = raw_input('Escribe tu nombre: ')
...     if not entrada: break
...
Escribe tu nombre: Miriam
Escribe tu nombre: Diego
Escribe tu nombre: Uriel
Escribe tu nombre: Víctor
Escribe tu nombre: Diego
Escribe tu nombre:
>>>

Otra forma de escribir el código anterior.

>>> entrada = raw_input('Escribe tu nombre: ')
Escribe tu nombre: Miriam
>>> while entrada:
...     entrada = raw_input('Escribe tu nombre: ')
...
Escribe tu nombre: Diego
Escribe tu nombre: Uriel
Escribe tu nombre: Víctor
Escribe tu nombre: Diego
Escribe tu nombre:
>>>

Utilizar ciclos for y while es muy sencillo en Python y, se pueden emplear de muchas formas. Dependiendo del problema que se tiene que resolver conviene utilizar uno u otro. Ya estamos por terminar esta temporada de Scripting en Python, espero que continúes con la última entrega Validación de entradas”. Si tienes alguna duda o sugerencia no dudes en dejarla en los comentarios.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *