これはおそらく簡単な答えですが、とにかく私は尋ねると思いました。Pythonループをユーザ入力で止める方法
以下のコードは、ユーザーに番号を要求しています。答えに応じて、番号に対応する等級が印刷されます。
(999)を入力することでループを停止(プログラムを終了)したいと考えています。私は問題が私のif userScore >= 90" print ('A')
にあることを知っています。したがって、ユーザーが999を入力すると、コンピュータはそれをAとみなします。
これを修正するためのショートカットはありますか?
(PS彼らはそこにいなかったときの出力が延々と繰り返し保持ので、私はすべての行に改行を追加しました。)
userScore = float(input('Enter the score or type "999" to quit: '))
while True:
try:
if userScore >= 90:
print ("You earned an A")
break
elif userScore >= 80:
print ("You earned a B")
break
elif userScore >= 70:
print ("You earned a C")
break
elif userScore >= 60:
print ("You earned a D")
break
elif userScore <= 59.9:
print ("You earned an F")
break
except:
if userScore == '999':
break
main()
'userScore == '999''最初にチェックしてください。 'try'の直後です。ところで、なぜ「試し」? – mshsayem
'try'は一般的にエラーチェックのために使われます - 私は' try'はここで使う正しい構文ではないと思います。他の 'if'文を' userScore == '999'をチェックする他の文の前に追加してください。 – acer