异常对象: 异常情况(比如发生错误)可以用异常对象表示。他们可用几种方法处理,但是如果忽略的话,程序会终止;警告: 警告类似于异常,但是(一般来说)仅仅打印错误message;引发异常: 可以使用raise语句引发异常。 他接受异常类或者异常实例作为参数,还能提供两个参数(异常和错误信息)。如果except子句中不使用参数调用raise,它就会"重新引发"该子句中捕捉到的异常;自定义异常类: 用继承Except类的方法可以创建自己的异常类。捕捉异常: 使用try语句的except字句捕捉异常,如果在except子句中不存在特定异常类,那么所有的异常都会被捕捉。异常可以放在元组中以实现多个异常的指定,如果给except提供两个参数,第二个参数就会绑定到except对象上。同样,在一个try/except语句中,能包含多个except子句,用来分别处理不用的异常; else子句: 除了except子句,可以使用else子句,如果主try块中没有引发异常,else子句就会被执行; finally: 如果需要确保某些代码不管是否异常引发都要执行(比如清理代码),那么这些代码可以放置在finally子句中;异常和函数: 在函数类引发异常时,它就会被传播到函数调用的地方(对于方法也是一样的)。