Bucle while en Python
Declaraciones de bucle en Python3
whileEs una declaración de bucle condicional en Python; mientras la condición sea True, el cuerpo del bucle se ejecutará continuamente.
yforA diferencia de,whileel bucle es más adecuado para escenarios donde no se conoce el número de iteraciones y se necesita salir según una condición.
Definición de la palabra: whilesignifica "cuando...", indicando que se ejecuta continuamente mientras la condición sea verdadera.
Sintaxis básica y parámetros
Formato de sintaxis
while 条件:
# 循环体(必须缩进)
语句1
语句2
...
else:
# 可选,当循环“正常结束”时执行
语句1
语句2
...
Descripción de sintaxis
- Condición: Expresión de condición evaluada antes de cada iteración del bucle.
- Lógica de ejecución: Cuando es True, se ejecuta el cuerpo del bucle y luego se vuelve a evaluar la condición.
- Condición de salida: Sale del bucle cuando la condición es False.
Cláusula else
- Opcional: Similar a for, while también puede tener else.
- Momento de ejecución: Se ejecuta cuando la condición se vuelve False (salida normal).

Ejemplos
Ejemplo 1: Uso básico
Ejemplos
count = 0
while count < 5:
print(count)
count += 1
print("Fin del bucle")
Resultado esperado:
0 1 2 3 4 循环结束
Análisis del código:
- Continúa el bucle mientras count < 5.
- En cada iteración, count aumenta en 1.
- Cuando count = 5, la condición es False y se sale del bucle.
Ejemplo 2: Validación de entrada del usuario
Ejemplos
# Nota: en la ejecución real, input() esperará la entrada del usuario
# Ejemplo simple: adivinar el número
secret = 7
guess = 0
while guess != secret:
guess = int(input("Por favor ingresa un número (7): "))
if guess < secret:
print("Demasiado pequeño")
elif guess > secret:
print("Demasiado grande")
print("¡Felicitaciones, adivinaste!")
Resultado esperado:
请输入数字 (7): 5 太小了 请输入数字 (7): 9 太大了 请输入数字 (7): 7 恭喜,猜对了!
El bucle while se usa a menudo en escenarios que requieren repetir hasta que se cumpla una condición.
Ejemplo 3: Calcular factorial
Ejemplos
n = 5
result = 1
while n > 0:
result *= n
n -= 1
print(f"5! = {result}") # Salida: 5! = 120
# Suma acumulativa
total = 0
i = 1
while i <= 100:
total += i
i += 1
print(f"1+2+...+100 = {total}") # Salida: 5050
Resultado esperado:
5! = 120 1+2+...+100 = 5050
Al usar bucles while para cálculos numéricos, ten cuidado de evitar bucles infinitos.
Ejemplo 4: Estructura while-else
Ejemplos
count = 0
while count < 3:
print(count)
count += 1
else:
print("El bucle terminó normalmente")
print("---")
# else no se ejecuta al usar break
count = 0
while count < 5:
if count == 3:
break
print(count)
count += 1
else:
print("Esta línea no se imprimirá")
Resultado esperado:
0 1 2 循环正常结束 --- 0 1 2
El else de while-else no se ejecuta cuando el bucle se termina con break.
Ejemplo 5: Bucle infinito y salida
Ejemplos
# El siguiente ejemplo usa break para salir
# Simular sistema de menú
while True:
print("\n"=== Menú ===")
print("1. Ver saldo")
print("2. Depositar")
print("3. Retirar")
print("4. Salir")
choice = input("Por favor elige: ")
if choice == "1":
print("Saldo: 1000 yuanes")
elif choice == "2":
print("Función de depósito")
elif choice == "3":
print("Función de retiro")
elif choice == "4":
print("Gracias por usar")
break # Salir del bucle
else:
print("Selección inválida")
print("Fin del programa")
Los bucles infinitos combinados con break pueden implementar flujos de control complejos.
Resultado esperado:
=== 菜单 === 1. 查看余额 2. 存款 3. 取款 4. 退出 请选择: 1 余额: 1000元 === 菜单 === 1. 查看余额 2. 存款 3. 取款 4. 退出 请选择:
Otras extensiones