En dos posts anteriores presentamos el bucle while. En esta oportunidad explicaremos el uso del bucle for en Python mediante ejemplos. Ambas alternativas nos servirán a la hora de tener que realizar una acción un cierto número de veces.
Generalmente, se prefiere utilizar un bucle for cuando se conoce la cantidad de elementos sobre los que se necesita iterar. Es decir, sabemos de antemano cuántas veces se desea realizar tal o cual operación. Por otra parte, el bucle while se usa cuando no conocemos ese dato. En ese caso, la iteración se lleva a cabo mientras la condición asociada evalúe a True.
Uso del bucle for en Python
Este bucle tiene la siguiente estructura:
# Comienzo del bucle for i in lista_elementos: accion1 accion2 ... accionN # Fin del bucle
donde
i representa, en cada iteración, un elemento en lista_elementos. Este objeto (lista_elementos) puede ser una secuencia de números, una lista (un tipo de datos compuesto en Python, que veremos más adelante), o cualquier «cosa» sobre la que se pueda iterar. Por último, accion1, accion2, hasta accionN, representan una serie de operaciones o declaraciones que por lo general afectan el elemento i actual.
La elección de i para representar cada elemento es arbitraria. Podemos también elegir otra letra, como j o k, o un nombre más «amigable» como numero.
Ejemplos del uso del bucle for en Python
En Python, range() es una función que devuelve una lista de números enteros. Acepta como argumentos el principio de la lista, el fin, y el incremento entre un elemento y el siguiente (en ese orden). También existe la posibilidad de omitir uno o dos de los mismos. Veamos las alternativas posibles:
- range(n) devuelve una lista de enteros comenzando por 0 y finalizando en n – 1.
- range(comienzo, fin) devuelve la lista de enteros comprendidos entre comienzo y fin, sin incluir a este último.
- range(comienzo, fin, paso) igual que el caso anterior, únicamente que entre comienzo y el próximo elemento existirá una diferencia de paso, y así sucesivamente con el próximo elemento.
Veamos los siguientes ejemplos (los resultados se ven en la Fig. 1):
print('Generar una lista del 0 al 4 y mostrarla por pantalla') for i in range(5): print(i) # Fin del bucle print('Lista entre 10 y 20') for j in range(10, 21): print(j) # Fin del bucle print('Lista de múltiplos de 3 hasta el 30 inclusive') for multiploDeTres in range(3, 31, 3): print(multiploDeTres) # Fin del bucle
En este caso la única acción que realizamos fue imprimir los elementos de la secuencia. En próximos posts haremos cosas más «interesantes». ¡No se lo pierdan!