Python数猜Gam

2024-04-26 12:48:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我是一个学习Python(使用2.7.4版)的初学者,我制作了这个数字猜谜游戏。到目前为止,我的代码是:

import random
name = raw_input("Hi there! What\'s your name?\n")
print "Well, " + name + ", I am thinking of a number between 1 and 100"
number = random.randint(1,100)
guess = int(raw_input("Take a guess:\n"))


count = 1

while guess != number:    
    if guess < number:
        print "Sorry, your guess is too low."                 
    if guess > number:
        print "Sorry, your guess is too high."
    count += 1
    guess = int(raw_input("Take another guess\n"))

print "Good job, %s! You guessed my number in %d guesses!" % (name ,count)
  1. 如何提醒玩家他们之前已经猜到了?在
  2. 我如何确保玩家只能输入数字作为他们的猜测?我被难住了。 谢谢!在

Tags: namenumberinputyourrawifiscount
2条回答

问题一的答案列出:

while run:
    geusslist = []
    number = raw_input("Make A Geuss")
    geusslist.extend((number))

if print_nums:
    print "You Have Guessed:"
    print geusslist

如果这个代码被运行并且玩家猜到10,20,30,40,50,它应该返回

^{pr2}$

至于第二个问题,我认为雷蒙德·海丁格回答得很好。在

对于第一个问题,请使用set跟踪以前的输入值:

seen = set()
while guess != number:    
    if guess < number:
        print "Sorry, your guess is too low."                 
    if guess > number:
        print "Sorry, your guess is too high."
    count += 1
    while True:
        guess = int(raw_input("Take another guess\n"))
        if guess in seen:
            print "Oops, you have guess than one before"
            continue
        else:
            seen.add(guess)
            break

对于第二个问题,您可以使用isinstance()函数,但不需要太多。int()函数将为您检查输入,如果您没有得到整数输入,则会引发异常。如果您愿意,可以捕获该异常并添加一条不错的错误消息:

^{pr2}$

相关问题 更多 >