电脑猜谜游戏

时间:2016-09-18 10:12:59

标签: python

import random

def start():
    print "\t\t***-- Please enter Y for Yes and N for No --***"
answer = raw_input("\t\t    Would you like to play a Guessing Game?: ")
if answer == "Y"
or answer == "y":
    game()
elif answer == "N"
or answer == "n":
    end()

def end():
    print("\t\t\t     **Goodbye** ")
raw_input("\t\t\t**Press ENTER to Exit**")

def game():

    print "\t\t\t  Welcome to Williams Guessing Game"
user_name = raw_input("\n\t\t  Please enter your name: ")
print "\n", user_name, "I am thinking of a number between 1 and 20"
print "You have 5 attempts at getting it right"
attempt = 0
number = random.randint(1, 20)

while attempt < 5:
    guess = input("\t\nPlease enter a number: ")
attempt = attempt + 1
answer = attempt
if guess < number:
    print "\nSorry", user_name, "your guess was too low"
print "You have ", 5 - attempt, " attempts left\n"
elif guess > number:
    print "\nSorry ", user_name, " your guess was too high"
print "You have ", 5 - attempt, " attempts left\n"
elif guess == number:
    print "\n\t\t Yay, you selected my lucky number. Congratulations"
print "\t\t\tYou guessed it in", attempt, "number of attempts!\n"
answer = raw_input("\n\t\t\t\tTry again? Y/N?:  ")
if answer == "Y"
or answer == "y":
    game()
elif answer == "N"
or answer == "n":
    end()

start()

1 个答案:

答案 0 :(得分:0)

如果您希望计算机猜测您的号码,您可以使用以下功能:

import random

my_number = int(raw_input("Please enter a number between 1 and 20: "))
guesses = []

def make_guess():
    guess = random.randint(1, 20)
    while guess in guesses:
        guess = random.randint(1, 20)
    guesses.append(guess)
    return guess

while True:
    guess = make_guess()
    print(guess)
    if guess == my_number:
        print("The computer wins!")
        break
    else:
        print(guesses)

这只是一个快速而肮脏的例子,但我希望它能给你这个想法。这样,计算机可以获得无限制的猜测,但您可以轻松更改while循环以限制其猜测次数。