2013-06-18 73 views
7

Tôi đang sử dụng Python 3.2 và cố gắng thoát khỏi nó sau khi người dùng nhập vào mà họ không muốn tiếp tục, có mã sẽ thoát khỏi nó trong câu lệnh if bên trong một trong khi lặp lại? Tôi đã thử sử dụng exit(), sys.exit(), sys.quit(), quit() và tăng SystemExit.cách thoát khỏi tập lệnh python trong câu lệnh if

+13

tất cả những nên làm việc? – Serial

+0

'nếu True: exit()' hoạt động. – Youcha

+7

Bạn có thể hiển thị cho chúng tôi mã bạn đang sử dụng khi mã này không hoạt động không? Bạn đang cố gắng thoát khỏi chương trình, hoặc chỉ là câu lệnh 'if'? Bạn đang bắt SystemExit vì một lý do nào đó? –

Trả lời

19

này hoạt động tốt đối với tôi:

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() 

chỉnh sửa: sử dụng input trong python 3.2 thay vì raw_input

+1

đã thiết lập một cái gì đó tương tự và nó không hoạt động. đây là mã. nếu answer.lower(). startswith ("y"): in ("ok, tiếp tục") elif answer.lower(). startswith ("n"): in ("ok, sayonnara") sys.exit() – ethan

+1

@ethan Giải pháp này đủ công bằng. Dán mã chính xác của bạn tại đây. – ducin

+0

Tôi đã nhập mã của bạn gần như nguyên văn vào trình thông dịch python của tôi và nó hoạt động tốt. Bạn nên đăng mã của mình. Có thể cái gì khác đang xảy ra trong vòng lặp của bạn? – d512

Các vấn đề liên quan