CODEZEROINTERACTIVE

Chapter 10 / 15

Parte 9 — Mantener un menú abierto

Bucles while y for, menús repetitivos, break, continue, contadores y acumuladores.

Lesson 1055%

10 / 26 lessons in this chapter

Parte 9 — Mantener un menú abierto

1 / 1 in this part

Current chapter

Chapter 10 — Bucles: repetir instrucciones

Self-paced

Parte 9 — Mantener un menú abierto

Menú con while True

python terminal
while True:
    print()
    print("1. Ver saldo")
    print("2. Registrar ingreso")
    print("3. Registrar gasto")
    print("4. Ver resumen")
    print("5. Salir")

    opcion = input(
        "Selecciona una opción: "
    ).strip()

    if opcion == "1":
        print("Mostrando saldo...")

    elif opcion == "2":
        print("Registrando ingreso...")

    elif opcion == "3":
        print("Registrando gasto...")

    elif opcion == "4":
        print("Mostrando resumen...")

    elif opcion == "5":
        print("Cerrando MiniFinance...")
        break

    else:
        print("Opción inválida.")

Cómo funciona

La condición del bucle es:

python terminal
True

Por eso se repite indefinidamente.

La salida está controlada por:

python terminal
if opcion == "5":
    break

Mientras el usuario no seleccione "5", el menú volverá a aparecer.


Ejecución posible

text terminal
1. Ver saldo
2. Registrar ingreso
3. Registrar gasto
4. Ver resumen
5. Salir
Selecciona una opción: 1
Mostrando saldo...

1. Ver saldo
2. Registrar ingreso
3. Registrar gasto
4. Ver resumen
5. Salir
Selecciona una opción: 3
Registrando gasto...

1. Ver saldo
2. Registrar ingreso
3. Registrar gasto
4. Ver resumen
5. Salir
Selecciona una opción: 5
Cerrando MiniFinance...

Una variable para controlar el bucle

También podemos escribir:

python terminal
aplicacion_abierta = True

while aplicacion_abierta:
    opcion = input("Opción: ")

    if opcion == "5":
        aplicacion_abierta = False

Cuando la variable cambia a:

python terminal
False

la condición del while deja de cumplirse.


break o variable de control

Ambas opciones son válidas.

Con break:

python terminal
while True:
    if opcion == "5":
        break

Con variable:

python terminal
aplicacion_abierta = True

while aplicacion_abierta:
    if opcion == "5":
        aplicacion_abierta = False

Para menús sencillos, while True con break suele ser claro y común.