Python异常处理

    xiaoxiao2023-09-28  161

    异常

           程序调试和运行过程中出现异常是不可避免的,因此.针对程序运行异常情况的处理语句是任何编程语育必不可少的。异常(Exception)是指翅出程序正常执行流程的某些特殊情况。异肯机制是指当遇到异常情况时,程序的处理方法。当程序执行过程中出现逻辑错误、内存益出、I/O错误等异常情况时,将会触发程序异常机制,并执行相应的异常处理代码。         如果没有编写异常处理代码,异常情况将会被Python内置的异常机制捕获,解释器将返回异常情况类型,并终止程序运行。但在数据爬取、处理、分析的过程中,大多数情况下,当遇到异常情况时,我们并不希望程序中断运行,而是希望在进行必要的异常处理后继续运行程序,这就需要Python的异常处理语句发挥作用。.         Python3中Exception是除SystemExit(解释器请求退出)、KeyboardInterrupt(用户中断执行)、GeneratorExit(生成器异常退出)之外的所有异常的基础类。Exception共包含了42种Python内置的异常子类,比如:MemoryError(内存溢出异常)、ImportError(模块对象导人异常)、IOError(输人输出异常)等。通过Python类的继承机制,我们既可以捕捉异常基础类进行统一的异常处理,也可以捕捉各种异常子类进行不同的异常处理,

     

    try...exept...异常处理语句       try...except...语句用于处理可能产生异常的语句块。格式如下:

    try: 语句块1 except[异常类型]: 语句块2 except[异常类型]: 语句块3 ...

           在try...excep...语句中,首先执行try下的语句块1,如果引发异常,则执行过程会跳到第一个except语句。如果except中定义的异常与引发的异常匹配,则执行该except中的语句,如果引发的异常不匹配第一个except,则会搜索第二个except。允许编写的except 数量没有限制,如果所有的except都不匹配,则异常会传递到上一层try语句中。

    try...finally...异常处理语句

              try...finally..语句中无论异常是否发生,都会执行finally后地语句块,这点在保护文件方面格外重要   

     

    raise语句

            以上示例都是在程序执行时由系统自动抛出的异常,但在某些调试程序的时候,需要人为地抛出异常,从而观察程序执行效果。这时可以通过raise语句实现人为抛出异常的功能。

    #raise可以指定抛出异常类型 try: raise [errortype] except [errortype]: 语句块

     

    with语句

    最新回复(0)