2年前にGCSEを終了してからPythonをもう一度習得し始めました。私はC#で少し背景を持っていますが、簡単なプログラム作業をするのは難しいです。ユーザー入力がPythonのテキストファイルの行と同じかどうかをチェックするのに問題がある
プログラムはクイズです。テキストファイルからの入力を受け取り、各行を変数に格納します。次にプログラムは入力形式で回答を受け取りますが、質問に正解を入力すると、等価演算子はテキストファイルからのユーザー入力と行を同じものとして認識しません。
テキストファイルは、最初の行に「質問」、2番目に「アンサー」などの形式で入力します。
相続人は、私がこれまで持っているもの:
quiz = open("cseasy.txt","r")
wholequiz = quiz.readlines()
q1 = wholequiz[0]
a1 = wholequiz[1]
mark = 0
ua1 = input(q1)
print (ua1)
print(a1)
if a1 == ua1:
print ("Correct!")
mark = mark + 1
else:
print ("Incorrect!")
私はすべてのソリューションに感謝するだろう、なぜ現在のプログラムは、私が欲しい結果を生成されていません。
上記のq1の答えはAですが、「A」と入力すると、プログラムの出力は「間違っています!」です。
wholequiz = quiz.readlines()
と
Python 2または3を使用していますか? –
'a1 = wholequiz [1] .rstrip()'または改行を受け取ります –
これを試してください: 'for wholequiz:print(row)'。ファイルから読み込んだ各行の最後に '\ n'改行がありますが、' input'によって返された文字列は '\ n'で終わらない –