在python中,异常为我们提供了程序运行中检测到错误的信息。

 

异常有多种:如ValueError、IndexError、ImportError等等

 

所有的内置异常都继承自Exception类,而Exception继承自一个BaseException基类。

 

可以自己创建自己的作为Exception类子类的异常类。

 

格式:

try:

    一些你希望顺利执行的代码()

except:

    异常处理代码()

else:

    此处代码块只有当try..except语句中没有发生任何异常的情况才会执行

finally:

    此处的代码块,无论是否发生异常,总会随后执行(即使try..except语句中有return)

 

 

实例:

 

def solve_something():
b = 0
a = int(input("输入一个数字a:"))
assert a > 0
print("数字输入正确")
print("a={},b={},现在a/b".format(a, b))
a += a / b
d = x + a
e = 2 * d


def some_function():
try:
solve_something()
except NameError as e:
print("Oh,名称错误", e.args)
except AssertionError:
print("Oh,断言错误")
except Exception as e:
print("未处理异常,记录错误中")
# huhuhu
raise
finally:
print("总会执行此行")


if __name__ == "__main__":
some_function()