讨论数量:
执行 try
子句, 如果没有异常发生, 则跳过except
子句并完成try
语句的执行。
0.0 <= fscore <= 1.0
只要 fscore 是个数值, 整数或浮点数, 该结果为一逻辑值 True
或 False
, 并非异常, 所以不会执行except 子句.
所以该处的 try ... except ... 语句毫无用处.
正确的方式为
try:
fscore = float(score)
except:
print("Error, not acceptable float number !")
if not (0.0 <= fscore <= 1.0):
print("Error, out of range !")
exit()
elif fscore >= 0.9:
print("A")
elif fscore >= 0.8:
print("B")
...
elif fscore < 0.6:
print("F")
执行
try
子句, 如果没有异常发生, 则跳过except
子句并完成try
语句的执行。只要 fscore 是个数值, 整数或浮点数, 该结果为一逻辑值
True
或False
, 并非异常, 所以不会执行except 子句.所以该处的 try ... except ... 语句毫无用处.
正确的方式为