小游戏:猜数字
请用户猜一猜我心里所想的数字,假定这个数字是8,猜对和猜错都给予反馈
#*------猜数字小游戏------*#
temp = input(“请猜一猜我现在心里想的数字是什么呢:”)
guess = int(temp)
if guess == 8:
print("猜对啦!你是我肚子里的蛔虫吧!")
else:
print("猜错啦!游戏结束")
非常单调对不对?下面我们来给这个小游戏润点色,比说如
1.只有一次机会,坑爹呢
2.猜的数字能不能给点提示?是大了还是小了?
3.猜的数字是固定的,那我告诉下一个人答案是多少那下一个人岂不是直接就通关了?真没意思!
为了解决这些问题,我们接下来开始准备一下
第一个问题,怎么让用户在猜错的情况下,有第二次甚至是第三次输入的机会呢?
这个时候,我们就想到了,可以使用循环结构 while 嘛
x = 1
while x > 0:
print("再试一次哦!")
x = x - 1
这样不就实现了让用户有第二次输入的机会嘛
第二个问题,判断大还是小进行提示,简单if,else嘛
第三个问题,想要实现答案是一个随机数,怎么去实现呢?有的小伙伴可能会想写一个程序,获取当天福利彩票的中奖号码,然后糅合在一起就变成了一个随机的数值,数学比较好的同学可能会想到采用线性同余法或者梅森旋转算法来实现,拜托,我们只是想设计一个简单的小游戏,前面代码我们花了十几分钟去实现,到了创建一个随机数这里,居然要花几天几夜的时间,omg!
那么,怎么去实现呢,这就不得不提到python的强大了,Life is short ,you need python .python有大量的现成的模块供你去调遣,这里面有一个叫做random的模块,可以从一个专业的角度帮你实现一个伪随机数?为什么是伪随机呢,因为真随机数,只有利用量子纠缠才能够产生真正的随机数,这一部分就不再赘述了。
那么,我们有了random模块,怎么去调遣呢,很简单,import random 就可以啦,random.randint(1,10)实现1-10之间的伪随机数,random.randint(100,1000)实现100-1000之间的伪随机数
好了,现在三个问题解决了,我们开始重构我们的代码吧!
#*-----猜数字小游戏-----*#
import random
x = 3
answer = random.randint(1,10)
while x > 0:
temp = input("请猜一猜我现在心里想的数字是什么呢:")
guess = int(temp)
if guess == answer:
print("猜对啦!你是我肚子里的蛔虫吧!")
break
if guess > answer:
print("大啦!")
else:
print("小啦!")
x = x - 1
print("游戏结束!")
有三次机会哦,快来试一试吧!
下面是这个小游戏的流程图!



