如何检查该号码是否在列表中

时间:2017-02-23 00:27:45

标签: python python-3.x

您好我正在尝试制作一台计算机与计算机猜谜游戏,我不希望计算机1猜两次相同的数字。我想知道如何阻止这一点。我相信这是围绕if声明,但我被卡住了。我需要帮助。

from random import randint

try:
    guess = randint(0,5)
    computer1 = randint(0,5)
    GuessList = [ ]
    GuessList.append(computer1)

    while computer1 != guess:
        print("COmputer guessed ",computer1)
        if computer1 in GuessList:
            computer1 = randint(0, 5)
        #computer1 = randint(0,5)

except KeyboardInterrupt:
    print("goodbye")


print("COMPUTER FINALLY GUESSED "), guess)

我的输出是计算机1多次猜测相同的数字,但它最终会得到它。

1 个答案:

答案 0 :(得分:0)

你可以添加,

while computer1 in GuessList:
    computer1 = randint(0, 5)

在你的computer1 = randint(0,5)之后。您可能必须删除GuessList = []因为每次都会重置GuessList。相反,您应该在代码的最开始处使用它并保留附加语句。

或者您可以使用

computer1 = random.choice(GuessesLeft)

GuessesLeft是computer1未猜到的所有数字的列表。每当它猜测你只是从列表中删除该项目。