7.3. Recorrido y el bucle for
Muchos cálculos incluyen el proceso de una cadena carácter a carácter. A menudo empiezan por el principio, seleccionan cada carácter por turno, hacen algo con el y siguen hasta el final. Este patrón de proceso se llama recorrido. Una forma de codificar un recorrido es una sentencia while:
1: indice = 0
2: while indice < len(fruta):
3: letra = fruta[indice]
4: print
5: letra
6: indice = indice + 1
Este bucle recorre la cadena y muestra cada letra en una línea distinta. La condición del bucle es indice < len(fruta), de modo que cuando indice es igual a la longitud de la cadena, la condicion es falsa y no se ejecuta el cuerpo del bucle. El ultimo caracter al que se accede es el que tiene el índice len(fruta)-1, que es el ultimo caracter de la cadena.
Como ejercicio, escriba una función que tome una cadena como argumento y entregue las letras en orden inverso, una por línea.
Es tan habitual usar un índice para recorrer un conjunto de valores que Python facilita una sintaxis alternativa mas simple: el bucle for:
1: for car in fruta:
2: print car
Cada vez que recorremos el bucle, se asigna a la variable car el siguiente carácter de la cadena. El bucle continua hasta que no quedan caracteres.
El ejemplo siguiente muestra como usar la concatenacion junto a un bucle for para generar una serie abecedarica. “Abecedarica” es la serie o lista en la que cada uno de los elementos aparece en orden alfabetico. Por ejemplo, en el libro de Robert McCloskey Make Way for Ducklings (Dejad paso a los patitos), los nombres de los patitos son Jack, Kack, Lack, Mack, Nack, Ouack, Pack, y Quack.
Este bucle saca esos nombres en orden:
1: prefijos = "JKLMNOPQ"
2: sufijo = "ack"
3: for letra in prefijos:
4: print letra
5: + sufijo
6: La salida del programa
7: es:
8: Jack
9: Kack
10: Lack
11: Mack
12: Nack
13: Oack
14: Pack
15: Qack
Por supuesto, esto no es del todo correcto, porque “Ouack” y “Quack” no están correctamente escritos.
Como ejercicio, modifique el programa para corregir este error.
Comentarios
Publicar un comentario