hjhhg1991 发表于 2019-5-27 18:14:21

33讲的课后习题~

hjhhg1991 发表于 2019-5-27 18:17:38

有没有办法用“try”改一下代码

第一:如果输入的不是数字,继续重新输入,不消耗次数
第二:如果中途输入了“不是数字”,继续重新输入

ba21 发表于 2019-5-27 18:20:27

def getinput():
    tmp = input("请输入一个整数:")
    while not tmp.isdigit():
      tmp = input("输入错误,请输入一个整数:")

    return int(tmp)

a = getinput()
print(a)

hjhhg1991 发表于 2019-5-27 18:22:00

标注了下图片

hjhhg1991 发表于 2019-5-27 18:22:48

再贴个代码文本
import random

secret = random.randint(1,10)
print('------------------我爱鱼C工作室------------------')
temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
try:   
    guess = int(temp)
except ValueError:
    print('输入错误!')
    guess = secret
while guess != secret:
    temp = input("哎呀,猜错了,请重新输入吧:")
    guess = int(temp)
    if guess == secret:
      print("我草,你是小甲鱼心里的蛔虫吗?!")
      print("哼,猜中了也没有奖励!")
    else:
      if guess > secret:
            print("哥,大了大了~~~")
      else:
            print("嘿,小了,小了~~~")
print("游戏结束,不玩啦^_^")

hjhhg1991 发表于 2019-5-27 18:24:28

ba21 发表于 2019-5-27 18:20
def getinput():
    tmp = input("请输入一个整数:")
    while not tmp.isdigit():


这个我知道,就是刚学的try,我就在想try这个新的函数,哪里优于,你写的这个方法。
页: [1]
查看完整版本: 33讲的课后习题~