学校プロジェクトのためにPythonで数字推測ゲームを作成しようとしています。私はかなりうまくいく基本的なゲームを作ったが、ユーザーが間違って何かを入力した場合には、例外処理を追加したい。'<'はケース間でサポートされていません - 番号推測ゲーム
def Normal_Guess():
number = round(random.uniform(0.0, 100.0),2)
guess = ""
while guess != number:
try:
guess = float(input("Please guess a number between 0 and 100: "))
except ValueError or TypeError:
print ("That isn't even a number!")
if guess < number and guess >= 0:
print ("You need to guess higher!")
elif guess > number and guess <= 100:
print ("You need to guess lower!")
elif guess == number:
print("Congratulations! You guessed the number!")
elif guess < 0 or guess > 100:
print ("The number you guessed is not between 0 and 100")
else:
print("That isn't even a number!")
New_Game()
これにより、ユーザは「推測」としてフロートまたは整数値を入力したときに正常に動作し、試してみてください-除いて、私が持っている句は、ユーザが入力した場合捕まえるようだ:たとえば、これは私のコードのセクションです初めは数字以外の何ものでもありませんが、プログラムは "if"ステートメントにも引き継がれているようです。 "'str'と 'float'のインスタンス間で" '<'がサポートされていないというTypeErrorが発生しています。
私はTry-Except節でループ全体を網羅しようとしましたが、それは動作しません。私は何をしているのか分かりません。どんな助けも大歓迎です。
、引き続き'使用します'を押してください。 – asongtoruin
また、明示的に例外がない場合を処理するために、 'else'節を' try'-'except'ブロックに追加してください。 –
あるいは、 'if else'チェーンを' try'ブロックの中に移動してください。なぜなら、それは論理的に所属しているからです。 –