改进之前所写的最基础班猜数字游戏,使其能够满足一下需求:
1、每次运行程序,答案可以是随机的。因为程序答案固定,容易导致答案外泄。
2、猜错的时候程序应该给点提示,例如告诉用户输入的值时大了还是小了。
3、每运行一次程序只能猜一次,应该多提供及此机会给用户猜测。
import random
print('----------------你是机灵鬼------------------')
count = 1
true = random.randint(0,100)
temp = input("不妨猜一下我现在心里想的是哪个数字(你有10次机会哦!):")
guess = int(temp)
while guess != true and count < 10 :
if guess > true :
print("你猜错啦,猜的太大啦!")
temp = input("重新猜一下我现在心里想的是哪个数字:")
count = count + 1
guess = int(temp)
elif guess < true :
print("你猜错啦,猜的太小啦!")
temp = input("重新猜一下我现在心里想的是哪个数字:")
count+=1
guess = int(temp)
elif guess == true :
print("卧槽,你是我心里的蛔虫吗?!")
print("哼,猜中了没奖励!")
else :
print("对不起,你的机会用完啦!")
print("卧槽,你是我心里的蛔虫吗?!")
print("哼,猜中了没奖励!")
print("游戏结束^_^")
这次的课内练习对这个进行了改进:
1、首先根据第一个要求,生成的数不能是固定的而应该是随机的,所以这个时候很显然,可以使用python中的random随机函数,百度上有很多对这个函数的分析。
2、其次看第二个要求,要求我们对猜错时,应该有点提醒的功能。所以这个时候就需要,使用if语句来判断:
if guess > true :
elif guess < true :
elif guess == true :
分为这三个进行分析,然后用while大循环进行扩展,当 guess != true and count < 10 时不断的循环。
3、之后在给予猜的人10次机会,用count来计数到底猜了几次因为最开始输入的时候已经输入了一次所以这里的话,所以这个地方count初始为1,之后每输入一次guess,count计数+1,当count为10时,跳出while。