2016-09-18 145 views
-2
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() 
+0

@Akar这就是我的代码的外观。它刚刚出来真的很棒。我需要让电脑猜到它 – Will

+0

它目前与我一起使用数字,我必须猜测。但我想让电脑猜出我输入的号码。 – Will

+2

问题中没有问题。点击“编辑”并添加你遇到的问题。 – Barmar

回答

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循环以限制其猜测次数。