0
我试图编码一个随机数猜测游戏,主要是因为我想知道如果/我的卡西欧CFX-9850G可以像goto
那样工作。 我没有得到消毒输入和生成错误消息(例如,设置max
太低,输入字母而不是数字,猜测超过最大值等)。我最初的问题是,虽然我的代码没有产生错误,但我似乎无法猜测数字,即使我将max设置为3并尝试0,1,2,3,4,5。这似乎是我创建了一个循环,我无法弄清楚在哪里。 这里是我的代码:为什么我似乎陷入循环?
import random
print "GUESS MY NUMBER"
max=int(raw_input("Guess number between 1 and what?"))
randomnumber = random.randint(1,max)
def make_guess(guess):
if guess == randomnumber:
print "Congratulations, you guessed my number!"
else:
guess=raw_input("Guess again?")
make_guess(guess)
guess=int(raw_input("What is your best guess?"))
make_guess(guess)
print "My number was" ,randomnumber
,它产生:
GUESS MY NUMBER Guess number between 1 and what? 3 What is your best guess? 0 Guess again? 1 Guess again? 2 Guess again? 3 Guess again? 4
现在我想代码循环,直到一个正确的猜测,但我期望的正确的猜测将触发if
代码。
将您的函数定义移到代码的顶部或定义一个主函数。不要混淆顶级代码和功能。 –
@VaibhavAggarwal我不明白。你的意思是把我的'def make_guess'移到上面'print“GUESS MY NUMBER”?我尝试过,并没有解决我的问题。 – toonarmycaptain