美文网首页
Python异常处理

Python异常处理

作者: Recalcitrant | 来源:发表于2019-06-01 19:36 被阅读0次

    Python异常处理

    一、捕获异常

    1.异常捕获语法

    try:
        # 尝试执行的代码
        pass
    except 错误类型1:
        # 针对错误类型1,对应的处理代码
        pass
    except 错误类型2:
        # 针对错误类型2,对应的处理代码
        pass
    ............
    except (错误类型m, 错误类型n,......):
        # 针对多种错误类型,对应的处理代码
        pass
    ............
    except Exception as result:
        # 打印未知错误信息
        print("未知错误:{}".format(result))
    else:
        # 没有异常才执行的代码
        pass
    finally:
        # 无论是否有异常都会执行的代码
        pass
    

    2.错误类型捕获

    except:处理所有异常。
    except Type:只处理指定类型的异常。
    except Type as result:获取异常信息。
    except (Type1, Type2, Type3, ......):同时处理多种异常。
    excep Exception as result:捕获所有异常(所有的异常都继承自Exception)。

    注意:except语句执行顺序为从上至下。因此书写捕捉异常语句时,要先写具体异常,再写具有普遍性的异常。

    二、异常传递

    异常发生后,会将异常传递给方法(函数)的调用者。
    如果调用者有捕捉到该异常,则按捕捉机制处理。
    如果调用者没有捕捉到该异常,则会向上层传递。
    最终会传递到Python解释器。若异常仍未被处理,此处即简单终止程序。

    三、抛出异常

    raise 异常名
    

    主动抛出异常。

    四、自定义异常

    class 自定义异常名(Exception):
        pass
    

    自定义异常主要是自己定义的异常类,对异常进行分门别类管理,自定义异常需要继承异常父类Exception。

    相关文章

      网友评论

          本文标题:Python异常处理

          本文链接:https://www.haomeiwen.com/subject/bevktctx.html