Bucles en Python

Iniciado por Sajuuk, Mayo 15, 2015, 02:50:51 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Mayo 15, 2015, 02:50:51 AM Ultima modificación: Mayo 19, 2015, 10:04:33 PM por Barlan
Bucles



Existirán ocasiones en las que queremos mantener un proceso de interacción con el usuario, o simplemente busquemos imprimir ciertas instrucciones una cantidad n de veces.
Para esto, Python nos proporciona 2 opciones: While loop, y For loop.

Estas estructuras cíclicas nos permiten ejecutar un mismo código, de manera repetida, mientras se cumpla una condición.

Es importante (si no es que fundamental) que sepas los operadores de condición, ya que con ellos creamos algoritmos y comparaciónes.
Si no los sabes, aquí están:

Código: python
x != y     # x no es igual a y
x > y      # x es mayor que y
x < y      # x es menor que y
x >= y     # x es mayor o igual que y
x <= y     # x es menor o igual que y





While Loops



La condicional While ejecuta una instrucción mientras algo sea verdadero (o falso). Podemos imprimir desde 5 veces, hasta el infinito y más alla...!

Sintaxis:
Código: python

while expresión:
   instrucción(es)


El código de arriba funciona así:
Mientras algo sea verdadero ejecutar:
        Instrucción (o instrucciónes)

Ejemplo de uso:
Código: python

variable = int(input("Numero: "))

while variable <= 100:
print(variable)




Como vemos, el numero ingresado se imprimirá infinitamente, ya que no cambiará nunca su valor, y no será más grande o igual a 100.
Para corregir esto, agregamos la siguiente linea de código:
Código: python

variable = int(input("Numero: "))

while variable <= 100:
print(variable)
variable += 1    # Cada vez que se imprima la variable, se le sumará 1 a ella.




Explicación:
La variable "variable" nos pide que ingresemos un número entero.
Entonces, ejecutamos una condicional:
Código: python
while variable <= 100:


Quiere decir:
Mientras la variable sea menor o igual a 100...
Esto quiere decir, que se ejecutará la instrucción hasta que la variable alcance un valor igual o mayor a 100.
Código: python
variable += 1

Y lo que hace esta linea, es sumarle 1 a nuestra variable. También se puede representar así:
Código: python
variable = variable + 1

Simplemente le agregaremos a nuestra variable un 1.

También podemos usar valores booleanos (True o False) en while:
Código: python

while True:
print("Underc0de")


Lo anterior imprimiría la cadena "Underc0de" el suficiente tiempo para que puedas verlo a la edad de los 80 años. Osease, siempre se imprimirá la cadena, a menos de que algo la interrumpa (como un KeyboardInterrupt, o cerrar la consola)




For loop




For nos permite recorrer cada elemento de una variable, cadena, o conjunto de datos.

Ejemplo:
Código: python

mi_lista = ["Pablo", "Antonio", "Juan", "Mauricio"]
for nombre in mi_lista:
    print(nombre)


Lo anterior quiere decir: Recorre cada cosa que esté en la lista de arriba, e imprimela.
Cada valor en la lista se le asignará a la variable nombre, la cual se imprime.

También podemos "emular" while desde un for, usando la instrucción range():



Otro ejemplo:
Tenemos 2 listas, ambas con 3 nombres. Pero yo quiero unir todos los nombres en la primera lista, ¿cómo puedo yo hacerlo? Fácil:
Código: python

lista1 = ["Pedro", "Pablo", "Jorge"]
lista2 = ["Luis", "Carlos", "Julio"]

for nombre in lista2:
lista1.append(nombre)

print(lista1)




El bucle for recorre cada elemento de la segunda lista, guardando ese elemento en la variable nombre, y después, agregarlo a la primera lista con la instrucción append()





Saludos!