2017-09-26 6 views
-1

基本的には、プログラムの実行を開始し、コマンドが入力されるまで最初からやり直します。リピートパートは動作していますが、ループを壊すことはできません。私は入力文を使ってループを中断するために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 

を私のためにそれだけでプリント,:

:私はそうのようなif文でbreak文を使用することが可能である場合、私は思ったんだけど、break文は、ループを終了することであることを理解します
Type a letter: quit 
Your letter is quit 
Goodbye 
Type a letter: 

私が入力すると、ループを壊すことはありません。可能であれば誰もが同じ結果を得る別の方法を持っていますか?「終了」のようなタイプを入力するとループが終了しますか?どんな助けもありがとうございます。

+2

'if'は壊れません。 '休憩 'はする。それがうまくいかない場合、 'if'条件に誤りがあり、実際に何が起こっているかを見るためにif文の前に' print(i == quit) 'のような値をいくつか出力してください –

答えて

6

iには1つの等号(これはあなたの投稿の誤字かもしれない)を設定する必要があります。

i = input('Type a letter:') 

また、quitを引用符で囲んで文字列にする必要があります。あなたはそれを持っているので、ユーザーの入力をthe builtin quit functionと比較しているので、それらは決して等しくないでしょう。

if i == 'quit':