Sentencia While
La estructura básica de un bucle while se define de la siguiente manera:
while condicion:
# Código a ejecutar mientras la condición sea verdadera
Es posible anidar bucles while dentro de otros.
Control de Salida: print y Caracteres Especiales
La función print agrega un salto de línea por defecto. Para evitarlo, se puede utilizar el parámetro end.
print("Hola", end="")
print("Mundo", end="")
Salida: HolaMundo
El carácter de tabulación \t se utiliza para alinear texto en columnas.
print("Nombre\tPuntuación")
print("Ana\t85")
print("Carlos\t92")
Salida:
Nombre Puntuación
Ana 85
Carlos 92
Utilización del Bucle For
Concepto Fundamental
A diferencia del bucle while, cuya condición de continuación es personalizable, el bucle for itera automáticamente sobre cada elemento de una secuencia de datos. Por esta razón, no es posible crear un bucle infinito con for.
Sintaxis Básica
for variable_temporal in secuencia_de_datos:
# Acciones a realizar
Un bucle for extrae y procesa cada elemento de una colección, lo que lo convierte en un bucle de iteración.
lenguaje = "Python"
for caracter in lenguaje:
print(caracter)
Salida:
P
y
t
h
o
n
Generación de Secuencias Numéricas con range()
La función range() produce una secuencia inmutable de números enteros, muy útil con los bucles for.
Sintaxis con un Parámetro
range(fin): Genera números desde 0 hasta fin - 1.
for contador in range(5):
print(contador, end=" ")
Salida: 0 1 2 3 4
Sintaxis con Dos Parámetros
range(inicio, fin): Genera números desde inicio hasta fin - 1.
Sintaxis con Tres Parámetros (Paso)
range(inicio, fin, paso): Permite definir el incremento o decremento entre números.
# Secuencias ascendentes y descendentes
numeros_pares = list(range(2, 11, 2)) # [2, 4, 6, 8, 10]
cuenta_regresiva = list(range(5, 0, -1)) # [5, 4, 3, 2, 1]
# Casos que producen secuencias vacías
secuencia_vacia = list(range(5, 5)) # []
otra_vacia = list(range(3, 1)) # []
Ámbito de la Variable de Iteración
La variable definida en la cláusula for (ej: i en for i in ...) tiene su ámbito limitado al bucle según las mejores prácticas, aunque técnicamente persiste después de finalizado. Las variables definidas fuera del bucle sí están disponibles dentro de él.
Los bucles for también pueden ser anidados.
Control del Flujo del Bucle
continue: Detiene la iteración actual y salta inmediatamente al comienzo de la siguiente iteración.break: Termina por completo la ejecución del bucle.
Estas sentencias funcionan tanto en bucles for como en while. En bucles anidados, solo afectan al bucle más interno donde se encuentran.
Manejo de Excepciones en Bucles
El bloque try...except permite gestionar errrores que podrían ocurrir durante la iteración, evitando que el programa se detenga.
try:
datos = int(input("Introduce un valor entero: "))
cociente = 100 / datos
except ValueError:
print("Error: Debes introducir un número entero válido.")
except ZeroDivisionError:
print("Error: El divisor no puede ser cero.")