zoukankan      html  css  js  c++  java
  • 异常处理

    异常处理
    1.异常错误分类:
    1.1 语法错误
    1.2 逻辑错误
    逻辑错误,难以避免,必须要处理
    2.异常处理:
    2.1 先捕捉错误
    2.2 在进行处理

    异常处理的两种方式:
    if 如果
    type: except 异常处理

    if处理异常时的劣势:
    1.对于相同的错误类型,要用大量的重复代码处理异常
    2.如果出现的异常种类比较多时,利用if,代码会出现冗余现象
    type处理异常:
    try: 单支
    try:
        a =1
        pass
    except 错误类型:


    3. try: 多支

    多种错误
    except 错误类型1 as e:
        print(e)
    except 错误类型2 as e:
        print(e)
    except 错误类型3 as e:
        print(e)

    万能异常:
    try:
    多种错误
    except Exception:
    print('...')
    如果你只是想将异常处理掉,对错误不关系,用万能异常
    如果你需要根据不同的错误信息而执行不同的逻辑(分流),那么用多分支,或者多分支加万能异常

    try 多分支 + 万能异常
    try:
        多种错误
    except :
    
    else: 如果出现异常,就不执行else,没有出现异常就执行else语句

    try except (else) finally
    finally: 出不出现异常都执行,异常出现前执行finally
    用途:
    1.关闭文件句柄,关闭数据库链接
    2.函数return之前能够执行finally代码
    3.break 之前可以执行finally
    try:
        错误
    except 错误类型:
        print(11)
    finally:
        print(22)


    raise 主动抛出异常
    raise IndexError('超出索引范围')

    # 断言 表示一个强硬的态度,不满足条件就直接报错
    assert + 条件 条件不成立 ,直接报错

    自定异常:
    大项目开发的时候,出现的错误是python解释器没有给你定义的错误类型


    异常处理的总结:
    1.异常处理不能经常使用,耗费功能,异常处理的分支越多,冗余越多
    2.能用长须解决的问题,尽量用程序解决

    异常处理的用法:
    1.一些无法预知的错误,要用异常处理
  • 相关阅读:
    MySQL导出数据库、数据库表结构、存储过程及函数
    个人支付接口
    C# WPF,XAML 跨平台应用框架
    uniapp 第三方组件库
    C语言图形界面库
    微信小程序 获取cookie 以及设置 cookie
    stm32资源网
    找最长连续重复字母子串
    asp .net web api Swagger简单实用
    跨域问题
  • 原文地址:https://www.cnblogs.com/shicongcong0910/p/10325057.html
Copyright © 2011-2022 走看看