私のゲームのコンセプトは以下の通りです。コンピューターはランダムに1-100の数字を生成し、プレーヤーはその数字を推測しなければなりません。彼らが推測する数字が高いか低い場合、コンピュータはそれを指示します。数字推測ゲーム、次の推測を取ることができない
ユーザーが入力した推測が数字であることを確認するためにいくつかのコードを追加しましたが、何らかの理由で最初の推測でのみ機能します。
import random
x = random.randint(1, 100)
guess = input("Guess the number")
while guess.isnumeric() == True:
if x > int(guess):
print("Too low, guess again")
guess = input("Guess the number")
if x < int(guess):
print("Too high, guess again")
guess = input("Guess the number")
if x == int(guess):
print ("That is correct!")
break
if guess.isnumeric() == False:
print("Please enter a valid number")
guess = input("Guess the number")
私は本当にそれを説明する方法を知らない。しかし、例えば、私が最初の推測として数字20を推測すると、ランダムに生成された数字に応じて高すぎたり小さすぎたりするかもしれませんが、その後、ランダムな文字を入力すると、ランダムに生成された数と比較することはできませんでした。
あなたの質問には、*完全なトレースバック*を含めてください。あなたは、2番目または3番目の 'if'ステートメントで' ValueError'例外が発生していると思います。 –
各ifステートメントの終わりにcontinueを入れてください。 –