我是Python的新手,我正在用Python开发一个数字猜测游戏。但是,当我设置参数时:
import random
numberchosen = random.randint(0,100)
numberchosenstr = str(numberchosen)
print ("Let's play a number game")
numberguessed = input("Guess a number ")
print ("You guessed " + numberguessed)
if numberguessed > '100':
print ("You guessed too high, choose a number below 100")
if numberguessed < '0':
print ("You guessed too low, choose a number above 0")
if numberguessed != numberchosen:
print ("wrong")
但是,当我运行模块,并选择数字5,例如,或任何数字是在正确的范围内,但不是正确的数字,它总是返回
Let's play a number game
Guess a number 5
You guessed 5
You guessed too high, choose a number below 100
wrong
所以,我的问题是,为什么Python返回>;100错误,有什么方法可以修复它?你知道吗
您正在比较字符串,这是按字典顺序(即按字母顺序,一次一个字符)进行的。但即使一是int,字符串也总是大于数字。您需要去掉比较号码上的引号,然后在
input
上调用int()
,如下所示:相关问题 更多 >
编程相关推荐