2016-11-21 6 views
1

私はこの単純なプログラムをraw_inputに戻して、ユーザーが何か「yes」か「no」を入力した場合、どのようにすればよいかを考えようとしています。特定のraw_input()に移動しますか?

a = raw_input("test: ") 
while True: 
    if a == "yes": 
     print("yeyeye") 
     break 
    elif a == "no": 
     print("nonono") 
     break 
    else: 
     print("yes or no idiot") 

これは私がこれまでに得たものです。私は新しくて理解しにくいです。前もって感謝します。

+4

は 'あなたのwhileループ内raw_input'を置きます。 – DavidG

答えて

1

@DavidGが述べたように、単にループであなたのraw_inputステートメントを追加します。

while True: 
    a = raw_input("Enter: ") 
    if a == "yes": 
     print("You have entered Yes") 
     break 
    elif a == "no": 
     print("You have entered No") 
     break 
    else: 
     print("yes or no idiot") 
1

条件が満たされていないときは、毎回whileとread入力のための条件チェッカーについて説明してください。インラインリターンは、少量の条件には適していますが、選択数が多すぎるか条件状況で条件が発生すると、インラインリターンが問題になります。

なぜインラインリターンではなく、条件チェッカー(cloopなど)を使用する必要があります。

cloop=True 
while cloop: 
    a = raw_input("test: ") 
    if a == "yes": 
     print("yeyeye") 
     cloop=False 
    elif a == "no": 
     print("nonono") 
     cloop=False 
    else: 
     print("yes or no idiot") 
     cloop=True 
+0

あなたの答えは「低品質」になっています。それを保持したいのであれば、それを編集してなぜその質問に答えるかについての説明を加えることをお勧めします。 –

+1

@BillBellそれはあなたのために大丈夫ですか? – obayhan

1

単にループ内に最初の命令を置くことができます。このように、ユーザーがと異なる値を挿入するたびに、またはにはというメッセージが出力され、新しい入力を待つことができます。

while True: 
    a = raw_input("test: ") 
    if a == "yes": 
     print("yeyeye") 
     break 
    elif a == "no": 
     print("nonono") 
     break 
    else: 
     print("yes or no idiot") 
関連する問題