# 猜数字游戏
import random #randrange()方法返回指定递增基数集合中的一个随机数,基数默认值为1
import math
global secret_number,player_guess,remaining_guesses
# 初始化全局变量
#secret_number = 1 # 每个回合计算机随机产生的秘密数字
remaining_guesses = 0 # 一个回合剩余的猜测次数
range_high = 25 # 数字上限
secret_number = random.randrange(range_high)
remaining_guesses = int(math.ceil(math.log(range_high + 1, 2)))
print("游戏开始")
print("你总共有%s次猜测机会!" % remaining_guesses)
print("你应当在%s和%s之间猜测一个数字" % (0, range_high - 1))
for i in range(1,remaining_guesses+1):
print("请输入你猜测的数字并按回车键")
player_guess = eval(input()) #eval() 函数用来执行一个字符串表达式,并返回表达式的值。
print("你猜测的数字为:%s" % player_guess)
if player_guess == secret_number:
break
elif player_guess < secret_number:
print("太小了!")
print("你还剩余%s次猜测机会!" % (remaining_guesses-i))
else:
print("太大了!")
print("你还剩余%s次猜测机会!" % (remaining_guesses-i))
if(player_guess == secret_number):
print("真厉害,猜对啦,就是",str(player_guess))
else:
print("很遗憾,你用完了所有的机会,正确的答案应该是",str(secret_number))
输出:
游戏开始 你总共有5次猜测机会! 你应当在0和24之间猜测一个数字 请输入你猜测的数字并按回车键 15 你猜测的数字为:15 太大了! 你还剩余4次猜测机会! 请输入你猜测的数字并按回车键 10 你猜测的数字为:10 太大了! 你还剩余3次猜测机会! 请输入你猜测的数字并按回车键 5 你猜测的数字为:5 太小了! 你还剩余2次猜测机会! 请输入你猜测的数字并按回车键 8 你猜测的数字为:8 太大了! 你还剩余1次猜测机会! 请输入你猜测的数字并按回车键 6 你猜测的数字为:6 太小了! 你还剩余0次猜测机会! 很遗憾,你用完了所有的机会,正确的答案应该是 7