2017-09-26 52 views
-1

基本上我想要的是讓程序運行並從頭開始,直到輸入命令。我有重複的部分工作,但當我想要時,我無法讓循​​環休息。我試圖使用if語句來接受輸入並使用它來打破循環。我已經在教程中看到它完成了,但我無法爲它工作。據我所知,break語句退出循環,我想知道是否可以使用break語句在if語句,像這樣:我可以使用if語句在Python中打破一個while循環

while True: 
    i == input('Type a letter:') #They type a letter 
    if i == quit: #If they type "quit" this executes 
     print('Goodbye') #The program says goodbye 
     break #Ends the loop 
    else: 
     print("Your letter is", i) #If they type anything else, it gets printed 

有了這個對我來說這只是打印,:

Type a letter: quit 
Your letter is quit 
Goodbye 
Type a letter: 

如果我輸入它,不會打破循環。如果這是不可能的,有沒有人有另一種方式,我可以得到相同的結果,當我輸入類似「退出」的循環結束?任何幫助表示讚賞。

+2

'如果'沒有中斷。 'break'呢。如果這不起作用,那麼'if'條件有問題,並且你應該在if語句之前打印一些值,例如'print(i == quit)',以查看真正發生的事情 –

回答

6

您需要設置i與一個等號(這可能是您的文章中的錯字)。

i = input('Type a letter:') 

您還需要將quit放在引號中以使其成爲字符串。就像你所做的那樣,你將用戶的輸入與the builtin quit function進行比較,所以它們永遠不會相等。

if i == 'quit':