所以,我正在学习 Python 3。我尝试编写一个脚本,让你猜一个从 1 到 20 的数字。现在我知道这不是最好的方法,但是当我运行代码时,它会进入无限环形。是什么原因造成的?我做错了什么?我的问题的目的是了解我的错误以及导致错误的过程。感谢你们。
# Defining the function inside which the verification happens
def guesst(secretNumber, inputNumber):
numberOfGuesses = 0
if inputNumber >= 1 and inputNumber <= 20:
while inputNumber:
if inputNumber > secretNumber:
numberOfGuesses += 1
print('Your guess is too high.')
elif inputNumber < secretNumber:
numberOfGuesses += 1
print('Your guess is too low.')
elif inputNumber == secretNumber:
print('Your guess is correct, congratulations! You\'ve my number in ', numberOfGuesses, 'guesses.')
break
else:
print('Please enter a number between 1 and 20')
# Defining the variables used by the function
secretNumber = 11
inputNumber = int(input('I\'m thinking of a number between 1 and 20, try to guess which one: '))
# Calling in the function
guesst(secretNumber, inputNumber)
# -------------------------------------------------------
# I just changed my code to this and it worked, thank you!
# -------------------------------------------------------
def guesstt(secretNumber):
numberOfGuesses = 0
while secretNumber:
inputNumber = int(input('I\'m thinking of a number between 1 and 20, try to guess which one: '))
if inputNumber >= 1 and inputNumber <= 20:
if inputNumber > secretNumber:
numberOfGuesses += 1
print('Your guess is too high.')
elif inputNumber < secretNumber:
numberOfGuesses += 1
print('Your guess is too low.')
elif inputNumber == secretNumber:
print('Your guess is correct, congratulations! You\'ve my number in ', numberOfGuesses, 'guesses.')
break
else:
print('Please enter a number between 1 and 20')
secretNumber = 11
guesstt(secretNumber)
翻翻过去那场雪
慕尼黑5688855
牛魔王的故事
守候你守候我
相关分类