麻烦制作一个简单的数字猜谜游戏

时间:2017-01-22 13:33:43

标签: python python-2.7

我的代码:

from random import randint

def main():
    print "Guess a number between 1 and 100"
    randomNumber = 35
    found = False

    while not found:
        userGuess = raw_input("Your guess:")
        if userGuess == randomNumber:
            print "You got it"
        elif userGuess > randomNumber:
            print"Guess lower!"
        else:
            print "Guess higher"

main()

当我开始编写脚本并开始随机写入时,我总是得到"猜得更低"所以我试着做一点不同的事情。我做了这个代码:

print "Guess a number between 0 and 100"

random = "36"
numb = raw_input("Enter your guess: ")

while numb != random:
    numb = raw_input()  
    if numb < random:
        print "Guess lower"
    if numb > random:
        print "Guess higher"

if numb == random:
    print " You guessed it"
    exit()

你能帮我找到错误吗?

2 个答案:

答案 0 :(得分:1)

问题是您正在将数字与用户输入中的字符串进行比较。使用以下行将输入转换为数字。

numb = int(raw_input("Enter your guess: "))

您还需要在第一个if条件中将found设置为true,以便在猜到数字后退出循环。

答案 1 :(得分:0)

https://docs.python.org/2/library/functions.html#raw_input

raw_input()返回一个字符串。您需要将其强制转换为int,然后使用它。

x = int(raw_input())

至于第二个例子,你要将字符串与字符串进行比较,字符串将按字典顺序进行比较,而这不是你想要的。