'''
猜数字游戏
1.随机产生一个0~100(包含0和100)的整数
2.在while循环中:
2.1 输入一个0~100的整数,input输入的是字符串
2.2 转换为整数类型
2.3 和正确答案数字做对比
2.3.1 猜测数字 大于 正确答案 输出猜大了
2.3.2 猜测数字 小于 正确答案 输出猜小了
2.3.3 猜测数字 等于 正确答案 输出猜对了 退出程序
添加猜测次数限制的功能
'''
#使用到python中的内置的random模块
#引入random模块
import random
#随机生成一个0~100的整数,作为正确答案
number=random.randint(0,100)
print(number)
#在while中写代码
#法1:每局只能 猜测5次,就退出游戏
index=1
while index in range(1,6):
#输入一个0~100的整数,input输入的是字符串
gus_num=input('请输入您猜的数字(0~100):')
#将输入的字符串转换为整数类型
gus_num=int(gus_num)
#只要输入的数字不在0~100的范围,重新输入
while gus_num<0 or gus_num>100:
#重新输入
gus_num=input('输入的数字不在范围,请重新输入:')
#转换为整数类型
gus_num = int(gus_num)
#和正确答案数字做对比
if gus_num>number:
print('您猜大了')
elif gus_num<number:
print('您猜小了')
else :
print('恭喜您猜对了')
#index +=1 只可以玩5次游戏
#如果猜对了,给两个选项,1.继续玩 2.退出
print('1.继续玩')
print('2.退出程序')
#输入一个选项
num=input('请选择您的操作:')
#!=不等于 只要输入的选项不符合要求,重选
while num!='1' and num!='2':
#选项不存在,请重选
num=input('选项不存在,请重选:')
#num=int(num)
#继续玩
if num=='1':
#重置正确答案
index=1
number=random.randint(0,100)
print(number)
else:
#结束循环,退出程序
break
index+=1
if index==6:
print('您猜测次数大于5次,游戏结束!')
#法2:每局只能 猜测5次,就退出游戏
index=1
while 1:
if index>=6:
print('您猜测次数大于5次,游戏结束!')
break
#输入一个0~100的整数,input输入的是字符串
gus_num=input('请输入您猜的数字(0~100):')
#将输入的字符串转换为整数类型
gus_num=int(gus_num)
#只要输入的数字不在0~100的范围,重新输入
while gus_num<0 or gus_num>100:
#重新输入
gus_num=input('输入的数字不在范围,请重新输入:')
#转换为整数类型
gus_num = int(gus_num)
#和正确答案数字做对比
if gus_num>number:
print('您猜大了')
elif gus_num<number:
print('您猜小了')
else :
print('恭喜您猜对了')
#index +=1 只可以玩5次游戏
#如果猜对了,给两个选项,1.继续玩 2.退出
print('1.继续玩')
print('2.退出程序')
#输入一个选项
num=input('请选择您的操作:')
#!=不等于 只要输入的选项不符合要求,重选
while num!='1' and num!='2':
#选项不存在,请重选
num=input('选项不存在,请重选:')
#num=int(num)
#继续玩
if num=='1':
#重置正确答案
index=1
number=random.randint(0,100)
print(number)
else:
#结束循环,退出程序
break
index+=1
添加过关功能:
添加过关功能,第一关能猜测10次,第二关能猜测七次,第三关能猜测5次,第4关能猜测3次,第5关能猜测1次
'''
添加过关功能,第一关能猜测10次,第二关能猜测七次,第三关能猜测5次,第4关能猜测3次,第5关能猜测1次
'''
import random
def guess():
guess_list = [10, 7, 5, 3, 1]
number = random.randint(0, 100)
print(number)
#index定义猜测次数
index = 0
#列表的索引
i=0
#列表里的数值赋值给s
s=guess_list[i]
print(s)
while s:
# 输入一个0~100的整数,input输入的是字符串
gus_num = input('请输入您猜的数字(0~100):')
# 将输入的字符串转换为整数类型
gus_num = int(gus_num)
# 只要输入的数字不在0~100的范围,重新输入
while gus_num < 0 or gus_num > 100:
# 重新输入
gus_num = input('输入的数字不在范围,请重新输入:')
# 转换为整数类型
gus_num = int(gus_num)
# 和正确答案数字做对比
if gus_num > number:
print('您猜大了')
elif gus_num < number:
print('您猜小了')
else:
print('恭喜您猜对了')
print('-----------欢迎进入下一关-----------')
# 如果猜对了,给两个选项,1.继续玩 2.退出
print('1.继续玩')
print('2.退出程序')
# 输入一个选项
num = input('请选择您的操作:')
# !=不等于 只要输入的选项不符合要求,重选
while num != '1' and num != '2':
# 选项不存在,请重选
num = input('选项不存在,请重选:')
# num=int(num)
# 继续玩
if num == '1':
# 重置正确答案
index=0
i += 1
number = random.randint(0, 100)
print(number)
#--------------------------------注意!!!
s=guess_list[i]
continue
else:
# 结束循环,退出程序
break
print('您已经尝试了:%s次!' % index)
index += 1
if index ==guess_list[i]:
print('过关失败!')
break
s-=1
guess()