try:
score=int(input('请输入分数:'))# 教程的解法在此处有用例会出错,比如输入'a',此处的异常不能被下面定义的异常捕获到if0<=score<=100:print('分数为:{0}'.format(score))else:raise Exception('分数不正确')except Exception as e:print(e)# 我的代码import re
patterns='(1-9){1}[0-9]*'try:
score=input('请输入分数:')if score.isnumeric()==Falseorlen(score)>3or re.match(patterns,score)==Noneorint(score)<0orint(score)>100:raise Exception('分数不正确')else:print('分数为:{0}'.format(score))except Exception as e:print(e)
实战二 判断是否构成三角形 p88
try:
a=eval(input('请输入第一条边:'))
b=eval(input('请输入第二条边:'))
c=eval(input('请输入第三条边:'))if a+b>c and a+c>b and b+c>a:print('{0},{1},{2}可以构成三角形'.format(a,b,c))else:raise Exception(f'{a},{b},{c}不能构成三角形')except Exception as e:print(e)