180130 猜数字游戏的改进


这段代码修改后基本上不再会报错了! 非常的好!!
age = 30
c = 0   #定义记数器
for 次数 in range(6):
    if c < 3:
        while True:
            guess = input("请输入一个猜猜的数字 :")
            if guess.isdigit():
                guess = int(guess)
                break
            else:
                print("你的输入有误,请重新输入int类型的数字NO.!")


        if guess == age:    #如果 用户输入的guess值和age相同 
            print("Yes,your are right")    #输入如下对话
            continue_confirm = input("continue press 'yes',exit press 'no':")    #弹出一个input语句
            if continue_confirm == 'yes':            #如果变量等于input的yes
                c = 0                      #有趣的地方在这里!! 回到了计数器=0的时候,再度执行上面的从 c=0的以下的语句
  
elif continue_confirm == 'no':        #elif ,输入的是no的话,那么就 打出see you 字符串,并且接下来quit() print("see you") quit()
else:
         print("输错了")
elif guess < age: print("It is too little") else: print("Tt is too big") else: continue_confirm = input("continue press 'yes',exit press 'no':") if continue_confirm == 'yes': c = 0 elif continue_confirm == 'no': print("see you") quit() else: print("Wrong words") c += 1

其中,增加了个 

            if guess.isdigit():
                guess = int(guess)
                break
            else:
表示,如果确实输入的是int ,那就放行, 否则else的话:就弹出重新输入int类型的……

while 是当循环结构,当while 后的条件为真时进行loop,False则终止循环
age = 30     #变量赋值 age 是 30
c = 0   #定义记数器    #c作为计数器的次数计算,c=0表示从零开始记录次数
for i次数 in range(8):    #共可以猜的次数为8次 i可以改为任意字母或者汉字(例如“次数”)
    if c < 3:      #如果计数器c,也就是6记录的猜的次数小于3下
        while True:  # 英文本意是:当为真时,一直循环
            guess = input("请输入一个猜猜的数字 :")    #input 内置函数
            if guess.isdigit():          #如果输入的内容是 整形数字
                guess = int(guess)        #同上
                break                #那就放行,不做任何反应
            else:
                print("你的输入有误,请重新输入int类型的数字NO.!")     #否则,弹出提示
原文地址:https://www.cnblogs.com/cputn/p/8384640.html