"""
题目:练习使用python写一个猜数字的游戏,数字范围0-100,每次猜错,需要给出缩小后的范围,每个人只有10次的猜测机会,猜测机会用完游戏结束!
"""
#方法一:(增加了输入异常的处理,输入非法不计入输入次数中)
# coding:utf-8
import random
from time import sleep

print("欢迎您来玩猜数字游戏\n"
      "游戏规则如下:\n"
 "\"请从0-99中任意猜一个数字,如果您猜的数字与系统产生的数字"
 "相同,即猜中,反之亦然!\"\n\"切记,您只有10次机会!\"")
print("现在游戏开始!")
tmp=random.randint(0,100)
times=0
min=0
max=100

while 1:
  try:
   a=input("请输入你要猜的数字:")
    times=times+1
  except:
   print("不能输入非数字的内容!")
    continue
 if times<=10:
 if 0<=a<=100:
 if a<tmp:
 min=a
 print("真遗憾,您猜错了,现在范围是%d-%d" %(min,max))
 elif a>tmp:
 max=a
 print("真遗憾,您猜错了,现在范围是%d-%d" %(min,max))
 elif a==tmp:
 if times==1:
 print("您真是太棒了,一次就猜中了!")
 else:
 print("恭喜您,您答对了!\n您一共花了%d次" %times)
 break
 else:
 print("您输入的数字有误,请重新输入!")

 else:
 print("真遗憾,您的机会用完了>﹏<")
 break
sleep(1)
print("猜数字游戏结束,再玩一次吧^_^!")

#方法二:(输入错误的不计入次数)
import random
print("欢迎您来玩猜数字游戏\n"
      "游戏规则如下:\n"
      "\"请从0-99中任意猜一个数字,如果您猜的数字与系统产生的数字"
      "相同,即猜中,反之亦然!\"\n\"切记,您只有10次机会!\"")
tmp=random.randint(0,100)
min=0
max=100
a=101
times=0

while a!=tmp:
 if times<=10:
 times=times+1
 a=input("请猜一个%d-%d之间的数字:"%(min,max))
 if min<=a<=max:
 if a<tmp:
 min=a
 print("真遗憾,您没猜中")
 elif a>tmp:
 max=a
 print("真遗憾,您没猜中")
 else:
 print("您输入的数字有误,请输入一个%d-%d的数字!"%(min,max))
 else:
 print("真遗憾,您的机会用完了>﹏<")
 break

if a==tmp:
 if times==1:
 print("您真是太棒了,一次就猜中了!")
 else:
 print("恭喜您,您猜对了!\n猜字游戏结束!您一共用了%d次"%times)