Python 2.7 有人能告诉我这个python代码有什么问题吗?
注意:我使用的是Python 2.7 我对Python不是很有经验,但我决定编写一个简单的小程序。代码如下:Python 2.7 有人能告诉我这个python代码有什么问题吗?,python-2.7,Python 2.7,注意:我使用的是Python 2.7 我对Python不是很有经验,但我决定编写一个简单的小程序。代码如下: import random while True: randomNumber = random.randrange(1, 3) print randomNumber guessedNumber = raw_input("Choose a number between 1 and 3 ") if randomNumber == guessedNumber:
import random
while True:
randomNumber = random.randrange(1, 3)
print randomNumber
guessedNumber = raw_input("Choose a number between 1 and 3 ")
if randomNumber == guessedNumber:
print 'Yay! You got it right!'
else:
print 'You got it wrong :( The number was:',randomNumber
#The first print is just for testing.
但当我试着运行它时,我得到了以下结果:
有人能告诉我我需要更改什么或者代码有什么问题吗?
原始输入
返回一个字符串到猜测数字
,您的程序将字符串(猜测数字
)与整数(随机数字
)进行比较,因此,如果randomNumber==guessedNumber
永远不会计算为True
解决方法是将guessedNumber
转换为int
,然后比较这两个值。注意:“1”!=1.在Python2中,您可以使用input
而不是raw\u input
(它总是返回一个字符串)。可能重复@JohnColemanint(raw\u input())
通常被认为是一种更好的方法,因为它不会尝试对输入进行求值,从而使您有机会验证它。