2013-06-18 15 views
7

Sto usando Python 3.2 e sto provando ad uscirne dopo che l'utente ha inserito che non vogliono continuare, c'è il codice che lo chiuderà in un'istruzione if all'interno di un mentre ciclo? Ho già provato a utilizzare exit(), sys.exit(), sys.quit(), quit() e aumentare SystemExit.come uscire da uno script python in un'istruzione if

+13

tutti coloro dovrebbe funzionare? – Serial

+0

'se True: exit()' funziona. – Youcha

+7

Puoi mostrarci il codice che stai utilizzando dove questo non funziona? Stai cercando di uscire dal programma, o solo l'istruzione 'if'? Stai prendendo SystemExit per qualche motivo? –

risposta

19

Questo funziona bene per me:

while True: 
    answer = input('Do you want to continue?:') 
    if answer.lower().startswith("y"): 
     print("ok, carry on then") 
    elif answer.lower().startswith("n"): 
     print("ok, sayonnara") 
     exit() 

edit: utilizzare input in Python 3.2 invece di raw_input

+1

già impostato qualcosa di simile e non ha funzionato. questo è il codice se answer.lower(). startswith ("y"): stampa ("ok, continua quindi") elif answer.lower(). startswith ("n"): stampa ("ok, sayonnara") sys.exit() – ethan

+1

@ethan Questa soluzione è abbastanza buona. Incolla qui il tuo codice esatto. – ducin

+0

Ho digitato il codice quasi letteralmente nel mio interprete python e ha funzionato bene. Dovresti pubblicare il tuo codice. Forse qualcos'altro sta succedendo nel tuo ciclo? – d512

Problemi correlati