Coursera_An Introduction to Interactive Programming in Python_Mini-project # 2 Guess the number

因为没来得及上传,只能保留在此。 

# template for "Guess the number" mini-project
# input will come from buttons and an input field
# all output for the game will be printed in the console

import simplegui
import random
import math

secret_number = 0
Num_guesses = 0
num_range = 100
    
# helper function to start and restart the game
def new_game():
    # initialize global variables used in your code here
    global secret_number
    secret_number = random.randrange(0, num_range)
    print "New game. Range is from 0 to", num_range
    global Num_guesses
    Num_guesses = int(math.ceil(math.log(num_range+1,2)))
    print "Number of remaining guesses is", Num_guesses
    print ""

# define event handlers for control panel

def range100():
    # button that changes the range to [0,100) and starts a new game 
    global num_range
    num_range = 100
    new_game()

def range1000():
    # button that changes the range to [0,1000) and starts a new game     
    global num_range
    num_range = 1000
    new_game()
    
def input_guess(guess):
    # main game logic goes here	
    inp = int (guess)
    print "Guess was", inp
    global Num_guesses
    Num_guesses = Num_guesses - 1
    print "Number of remaining guesses is", Num_guesses
    if Num_guesses > 0:    
        if inp > secret_number:
            print "Lower"
        elif inp < secret_number:
            print "Higher"
        else:
            print "Correct"
            print ""
            new_game()
    else:
        if inp == secret_number:
            print "Correct"
        else:
            print "You ran out of guesses. The number was", secret_number
        print ""
        new_game()
    print ""

    
# create frame
frame = simplegui.create_frame('Guess the number', 200, 200)
# register event handlers for control elements and start frame
frame.add_button('Range is [0,100)', range100,200)
frame.add_button('Range is [0,1000)', range1000,200)
frame.add_input('Enter a guess', input_guess, 200)

# call new_game 
new_game()


 

你可能感兴趣的:(Coursera_An Introduction to Interactive Programming in Python_Mini-project # 2 Guess the number)