这是一个学习项目
游戏原理介绍:
这个猜数字的小游戏,相信很多人以前玩过,就是一个人从1-100中随机写一个数字,然后另外一群人去猜,猜一个数字的时候,就会告诉你所猜的数字大了还是小了,渐渐缩小范围,直到最后猜对的人,为最后的胜利者。
现在把生成数字和裁判的角色,交给代码,这样即使只有自己一个人的时候,也可以玩这样的游戏
经过上述游戏分析,我们就可以开始一套简单的思路
1.随机数的生成,我们就得需要用到random模块
2.猜数字的次数为多次,所以我们需要封装一个猜数字的函数
3.需要记录猜数字的区间范围
4.得防止用户使用不得当,输入字符不符导致程序异常
5.游戏过程中玩家终止游戏操作
于是,我们可以根据思路简单编写一下代码:
import random
n = random.randint(1,100) # 生成1 - 100的随机整
step = 0
low = 1
high = 100
def get_number(low = 1,high = 100):
while True:
print("Please enter an integer",low,"to",high,":")
guess = input()
if guess.isdigit():# 字符串是否为数字,是True,否False
guess = int(guess)
return guess
else:
continue
print("Game Init")
guess = get_number()
while True:
step += 1
print("step :",step)
if guess == 0:
print("quit")
break
if guess < n:
print(guess,"is low")
low = guess + 1
elif guess > n:
print(guess,"is high")
high = guess - 1
else:
print("you win!")
break
guess = get_number(low,high) # 继续猜
print("Game Over")
执行结果如下:
简单易学,轻松上手
可以根据自己对游戏的理解和需求,封装更多有趣的玩法