Menu di scelta

Una struttura del programma molto comune in passato.
L’utente sceglie l’operazione che deve essere eseguita indicandola con il numero corrispondente, specificato in un menu.

1

scelta=-1

while(scelta != 0):
    # visualizza il menu delle scelte disponibili
    # ...
    # ...

    scelta=int(input("Scegli: "))

    # esegue l'operazione corrispondente alla scelta
    # ...
    # ...

Finché la scelta è diversa da 0 si ripete il ciclo menu -> scelta -> operazione.

2

scelta=-1
while(scelta != 0):
    print("-------------------------")
    print("0. Uscita")
    print() 
    print("1. Operazione alfa")
    print("2.     \"      beta")
    print("3.     \"      gamma")
    print("...")
    print("...")
    print()
    scelta=int(input("Scegli: "))
    print("------------------------")

    if(scelta == 0):
        pass
    elif(scelta == 1):
        print("Operazione --alfa--")
        ...
    elif(scelta == 2):
        print("Operazione --beta--") 
        ...
    elif(scelta == 3):
        print("Operazione --gamma--") 
        ...
    ...
    ...
    else:
        print("Non capisco...")
        ...

print("Soddisfatto o rimborsato!")

La scelta dell’operazione da eseguire avviene con una scelta multipla ifelifelse

3

def alfa():
    ...

def beta():
    ...

def gamma():
    ...

def nonCapisco()
    ...

def menu(): 
    ... 

scelta=-1
while(scelta != 0):
    menu()
    scelta=int(input("Scegli: "))

    if(scelta == 0)  : pass
    elif(scelta == 1): alfa()
    elif(scelta == 2): beta()
    elif(scelta == 3): gamma()
    ...              : ...
    else             : nonCapisco()

print("Soddisfatto o rimborsato!")

Per snellire il main la visualizzazione del menu e le operazioni si possono realizzare tramite delle funzioni.

4

...

while(True):
    menu()
    scelta=int(input("Scegli: "))

    if(scelta == 0): break
    ...
    ...

...

Per semplificare il controllo del while si può utilizzare break: interrompe il ciclo infinito determinato dal valore True.