依然是整理的来自 The Rice的课程 An Introduction to Interactive Programming in Python (Part 1)第三周的小项目,一个简单的猜数字的游戏,这一课程大量用到了一个python的工具包SimpleGUI用于创建图形用户界面(GUI graphical user interface)
源代码
import simplegui
import random
def new_game():
range100()
def range100():
global answer, guess_num, max_num
max_num = 100
guess_num = 7
answer = random.randrange(0, 100)
print 'New game. Range is from 0 to', max_num
print 'Number of remaining guesses is', guess_num, '\n'
def range1000():
global answer, guess_num, max_num
max_num = 1000
guess_num = 10
answer = random.randrange(0, 1000)
print 'New game. Range is from 0 to', max_num
print 'Number of remaining guesses is', guess_num, '\n'
def input_guess(guess):
global guess_num
print "Guess was", guess
guess_num -= 1
print 'Number of remaining guesses is', guess_num
if guess_num == 0 and int(guess) == answer:
print 'Correct!', '\n'
new_game()
elif guess_num == 0 and int(guess) != answer:
print 'You ran out of guesses. The number was', answer, '\n'
new_game()
else:
if int(guess) == answer:
print 'Correct!', '\n'
new_game()
elif int(guess) >= max_num or int(guess) < 0:
print 'Out of guesses!', '\n'
elif int(guess) > answer:
print 'Lower!', '\n'
else:
print 'Higher!', '\n'
frame = simplegui.create_frame("'Guess the number' mini-project", 300, 200)
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)
frame.start()
new_game()
运行结果示例