Python初学者脚本不符合预期
我试着根据我刚学的内容编写一个完全独立的脚本,以确保我理解它。在下面的代码中,我无法理解为什么在猜测正确的随机数时,它从未到达我的ELSE:statement,打印出猜测是正确的?我知道答案必须很简单,但我只是感到困惑Python初学者脚本不符合预期,python,python-2.7,Python,Python 2.7,我试着根据我刚学的内容编写一个完全独立的脚本,以确保我理解它。在下面的代码中,我无法理解为什么在猜测正确的随机数时,它从未到达我的ELSE:statement,打印出猜测是正确的?我知道答案必须很简单,但我只是感到困惑 from sys import exit import random print "Guess the number between 1 thru 10" print "You have 3 tries" guess = raw_input("Enter a guess--&g
from sys import exit
import random
print "Guess the number between 1 thru 10"
print "You have 3 tries"
guess = raw_input("Enter a guess-->")
tries = 3
random_number = random.randrange(1,10)
while tries > 1 and guess != random_number:
print "That's not the number, try again!"
print "Tries remaining:", tries - 1
guess = raw_input("Next guess?-->")
tries = tries - 1
if guess != random_number:
print "Sorry, you lose!"
print "The number was", random_number
exit(0)
else:
print "You guessed it!"
您需要将您的
guess
作为int
进行比较raw_intput
从输入中读取一行并将其转换为字符串
from sys import exit
import random
print "Guess the number between 1 thru 10"
print "You have 3 tries"
guess = raw_input("Enter a guess-->")
tries = 3
random_number = random.randrange(1,10)
while tries > 1 and int(guess) != random_number:
print "That's not the number, try again!"
print "Tries remaining:", tries - 1
guess = raw_input("Next guess?-->")
tries = tries - 1
if int(guess) != random_number:
print "Sorry, you lose!"
print "The number was", random_number
exit(0)
else:
print "You guessed it!"
为什么要投反对票,先生们?真的吗?好的,删除了“不正确”的部分。也就是说,我希望它将该行从字节转换为字符串,而不是从
int
转换为字符串。我认为那句话有误导性。你仍然会将guess
转换为int
两次。那么,你知道有什么更好的方法可以实现archieve OP的目标,而不用使用OP的代码进行两次guess
吗?我试过guess=int(原始输入(“输入一个猜测-->”)和guess=int(原始输入(“下一次猜测?”)
)。对不起,我之前的评论让人困惑。这怎么会是重复的?我知道字符串和整数之间的区别在“复制”帖子中有解释,但作为一个因论坛而幸存下来的IT专业人士,我对编程很陌生,因此避免了一个重复的问题,当我说我是一个初学者时,没有错误信息可遵循,甚至不确定在哪里研究答案,因为我没有得到任何关于问题发生原因的信息?我尝试逐行执行shell命令,结果显示我的变量在原始输入命令之后是一个整数?