大佬们帮忙看看,我想让它进入异常块,现在进不去
Topic source不管传入的是(5), (5,6) 还是(5,6,7);b都是6,
if b == 6:
return a
通过这部分时返回的都是a, return之后就不再向下执行了;
而且你这套逻辑不通用,换一些测试数据的时候你这条逻辑就不行了。
- 1
不管传入的是(5), (5,6) 还是(5,6,7);b都是6,
if b == 6:
return a
通过这部分时返回的都是a, return之后就不再向下执行了;
而且你这套逻辑不通用,换一些测试数据的时候你这条逻辑就不行了。
BEKINDTO009
def product(a,b = 6,c = 7,d = 9):
if not isinstance(a,(int,float)):
raise TypeError('类型错误')
if b == 6:
return a
elif c == 7:
return a
elif d == 9:
return a
elif b != 6 and c == 7:
return a * b
elif b != 6 and c != 7 and d == 9:
return a * b * c
elif b != 6 and c != 7 and d != 9:
return a * b * c * d
if product(5) != 5:
print('测试失败!')
elif product(5,b=6) != 30:
print('测试失败!')
elif product(5,b=6,c=7) != 210:
print('测试失败!')
elif product(5,b=6,c=7,d=9) != 1890:
print('测试失败!')
else:
try:
product()
print('测试失败')
except TypeError:
print('测试成功')