java代码中捕获异常可以使用 try{} catch(){} finally{}
相应的,python中也有类似用法,格式为
try:
可能会出问题的代码
except Exception as err:
捕捉到异常之后的处理
finally:
不管有没有异常最后都会执行的代码
import math
print("solving ax^2 + bx + c = 0")
a = int(input("Enter a:"))
b = int(input("Enter b:"))
c = int(input("Enter c:"))
try:
d = math.sqrt(b * b - 4 * a * c)
fenmu = 2 * a
answer1 = (-b + d) / fenmu
answer2 = (-b - d) / fenmu
print("Two answers:{} {}".format(answer1, answer2))
except ZeroDivisionError:
print("a should not be 0")
except:
print("Answers are imaginary")
finally:
print("Over")
其中在try中的只有可能出现两种异常,一种是a=0,另一种是根号内的为负数。