2017-05-25 10 views
0

私はPythonを初めて使用し、一般的にコーディングしています。私は練習するために空白に埋めるクイズを作成しようとしています。最初の部分は難易度を選択するようにユーザーに求めます。コードが入力されると、空のリストが追加されます。質問と回答を読み込むためにリストを使用します。しかし、私が取り組んでいる問題は、if文がユーザの入力を認識しないことです。私はユーザーが簡単、中、または難しいだけを入力することを確認したい。コードが機能するかどうかを確認するために、私は印刷機能を使用しました。しかし、私のコードはelseステートメントに行き、「もう一度やり直してください」と表示します。何か案は?If文がユーザー入力を再調整しない

ここに私のコードです。

choice = [] 

new_choice = raw_input('Select your quiz difficulty: Easy, Medium, Hard: ') 
choice.append(new_choice) 
print choice 

if choice == 'easy': 
    print 'True' 
elif choice == 'medium': 
    print 'True' 
elif choice == 'hard': 
    print 'True' 
else: 
    print 'Try again.' 
+1

に追加する前に。 – chepner

+0

私はUdacity.comのプログラミングコースの3分の4くらいで、彼らは2.7で教えています。 – Brad

答えて

1

choiceあなたの入力ではなく、入力を含むリストです。変数new_choiceにユーザー入力を格納します。あなたは、文字列/テキストにそれを比較しようとしている一方で、現在の形choiceでこの

choice = raw_input('Select your quiz difficulty: Easy, Medium, Hard: ') 
print choice 

if choice == 'easy': 
    print 'True' 
elif choice == 'medium': 
    print 'True' 
elif choice == 'hard': 
    print 'True' 
else: 
    print 'Try again.' 
+0

ありがとうございます。私はそのロジックエラーを逃した、 – Brad

+0

私は貧しい人々を鳴らしたくないが、あなたがサイトの初心者であるので、誰かがあなたの質問に答えると、答えを「答え」とマークすることは丁寧であることを思い出させるだろう。投稿の横にチェックマークを付ける。プログラムへのあなたの冒険のハッピートレイル! – ktb

+0

私はあらかじめやったと思った。私がするとき、私はupvoteが記録されているが、私は15ポイント未満のrepポイントを持っているので、表示されていないと言います。 – Brad

2

がリストされてみてください。代わりにこれを試してみてください。私はそれが複数のオブジェクトを保持していることを示すためにchoicesにあなたのリストの名前を変更し

choices = [] 

new_choice = raw_input('Select your quiz difficulty: Easy, Medium, Hard: ') 
choices.append(new_choice) 
print choices 

if choices[-1] == 'easy': 
    print 'True' 
elif choices[-1] == 'medium': 
    print 'True' 
elif choices[-1] == 'hard': 
    print 'True' 
else: 
    print 'Try again.' 

-1最後にそのリストに追加したものにアクセスしましょう。したがって、すべてのユーザー応答をリストchoicesに保存する予定がある場合は、前回の回答との比較を行い、続行することができます。

+0

私はおそらく変数の名前を変更したいと思うでしょう( 'choice' - >' choices') – SwiftsNamesake

+0

素晴らしいアイデアは、それを追加します! – Antimony

0

リストを変数と比較しています。

は多分使用:

variable = choice[0] 
if variable == 'easy': 
    # rest of program 

また、 '簡単'、 '中' ことを確認し、 'ハード' 何の大文字が含まれていません。

あなたは使用することができます。

new_choice.lower() # converts to lowercase 

あなたは、Pythonに新しいしている場合は、おそらく、Pythonの3を学ぶべきであるあなたのリスト

関連する問題