09. Ciclos for - weincoder/IntroductionProgramCourse GitHub Wiki
Ciclo For. Este ciclo se repite por un número de veces conocidas primero veamos la función range
print (range(3))
como vemos aparece range (0,3) indicando que hace una lista del 0 hasta completar 3 dígitos es decir genera un rango 0,1,2 si pusieramos range(8) generaría el rango 0,1,2,3,4,5,6,7
En este caso se procede a mostrar en pantalla el valor 0,1,2 ya que "i" aumentará en uno en uno por iteración
for i in range (3) :
print(i)
También los ciclos for estan muy relacionados a las listas por ejemplo supongamos que tenemos la lista de edades y nombres de unos estudiantes una manera de almacenarlo seria en listas
cuando se crea encerrado en [] indica que es una lista estas son iterables, Se pueden modificar en el tiempo, su primera coordenada es la coordenada 0 por lo tanto para edades la coordenada dos es 18
edades = [21,22,18,17,16,14]
print (edades[2])
En el siguiente podemos ver que está encerrado en () esto indica que es una tupla Estas son inmutables es decir no se puede asignar valor a un campo ya asignado
nombres = ("mafer","gio","nano", "daniel", "gabriel","Olimac")
Que debería salir al dar esta instrucción?
print (nombres[1])
supongamos que deseamos mostrar en pantalla los estudiantes y sus edades len () es una función que retorna la cantidad de elementos en una lista por lo tanto para recorrer la lista completa lo hacemos en el rango de su tamaño.
for i in range (len(nombres)):
print("el estudiante {} tiene una edad de {} años".format(nombres[i],edades[i]))
Otra forma de mostrar los elementos de una lista es la siguiente :
for elemento in nombres:
print ("Hola soy el estudiante llamado {}".format(elemento))
En el caso anterior podemos ver como elemento cada vez que entraba, en el ciclo se valía igual al elemento correspondiente en la lista. Es decir la primera vez que entra al ciclo elemento será igual a mafer, luego gio, luego nano, luego daniel , luego gabriel y en la última iteración valdrá Olimac.
para agregar elementos a una lista se utiliza la instrucción append
para poder asignar algo a una tupla no se puede tocaría volverla lista primero
nombres =list(nombres)
nombres.append (input ("ingresa tu nombre \n :"))
print ("bienvenido {} a estos tutoriales, espero que sigas hasta el final!!, animo!!".format(nombres[-1]))
para acceder a la última coordenada de una lista denotamos -1, la penultima -2 etc
Ejemplo
agreguemos estudiantes hasta que el usuario diga que no desea agregar mas y luego mostremos los estudiantes agregados
#Constantes
pregunta_continuar = "¿desea agregar mas estudiantes? \n 1.Si \n 2. No \n su respuesta : "
pregunta_nombre = "Ingrese nombre del estuantiante a adicionar a la lista \n: "
mostrar_nombres_mensaje="Buenos días soy {} y he quedado registrado satisfactoriamente"
lista_estudiantes = []
validador = 1
while (validador == 1 ):
lista_estudiantes.append(input(pregunta_nombre))
validador = int (input (pregunta_continuar))
for nombre in lista_estudiantes:
print (mostrar_nombres_mensaje.format(nombre))