Osserva
- Un menu elenca le operazioni disponibili
- L’utente sceglie, tramite un numero, quale operazione scegliere
- L’operazione richiesta viene eseguita
- Se la scelta è diversa da 0 si ripete il ciclo
1 2 3 4 5 6 7 8 9 |
scelta=-1 while(scelta != 0): # visualizza il menu delle scelte disponibili # ... # ... scelta=int(input("Scegli: ")) # esegue l'operazione corrispondente alla scelta specificata # ... # ... |
La scelta dell’operazione da eseguire avviene con una scelta multipla if … elif … else …
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
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!") |
Per snellire il main la visualizzazione del menu e le operazioni si possono realizzare tramite delle funzioni.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
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 semplificare il controllo del while si può utilizzare break: interrompe il ciclo infinito determinato dal valore True.
1 2 3 4 5 6 7 8 9 10 |
... while(True): menu() scelta=int(input("Scegli: ")) if(scelta == 0): break ... ... ... |