• 从一个小案例通俗解释Python中try...except...else...finally异常捕获的过程和注意事项


    一、语法

        try:
            # 尝试执行的代码
            pass
        except 错误类型1:  # 下面几句是排除常见的异常,并进行提示等处理
            # 针对错误类型1,对应的代码处理
            pass
        except 错误类型2:
            # 针对错误类型2,对应的代码处理
            pass
        except (错误类型3, 错误类型4):  
            # 针对错误类型3 和 4,对应的代码处理
            pass
        ...
        ...
        except Exception as result:  # 编程中很难一次排除所有的错误,所有用这个语句,其中result是一个变量。这里相当于一个篮子,装了其他所有错误类型
            # 打印错误信息
            print("未知类型错误:%s" % result)
        else:
            # 没有异常才会执行的代码,作为奖励执行的代码
            pass
        finally:
            # 无论是否有异常,都会执行的代码
            print("无论是否有异常,都会执行的代码")

    注:异常捕获的作用是为了将程序执行过程中出现的bug返回给专业的程序员查看,同时保证整个程序的正常运行,而不会因为bug而终止后续的代码。

    二、下面是一个实例:

    try:
        print(8/int(input("请输入一个非零整数:")))
    except ZeroDivisionError:
        print("除数不能为0")
    except ValueError:
        print("请重新输入")
    except Exception as reason:
        print("未知类型错误:" % reason)
    else:
        print("你真棒,一次就获得正确的结果")
    finally:
        print("不管结果如何,你做了就是好孩纸")
        print("如果你喜欢这段代码,请给我点赞哟,么么哒")

    三、实际开发过程中,如何应用:

    补充概念: 1.异常的传递:当 函数/方法 执行 出现异常,会 将异常传递 给 函数/方法 的 调用一方;2.如果 传递到主程序,仍然
    没有异常处理,程序才会被终止

    **

    所以:

    **

    在开发中,在主函数中增加 异常捕获; 而在主函数中调用的其他函数,只要出现异常,都会传递到主函数的 异常捕获 中 这样就不需要在代码中,增加大量的 异常捕获,能够保证代码的整洁 经常放在 main 中

  • 相关阅读:
    Web后门工具WeBaCoo
    苹果内存取证工具volafox
    PlayMaker GUI的Normalized
    Arduino可穿戴教程之第一个程序——选择端口(三)
    缩略图信息提取工具vinetto
    jquery的defer
    toDo
    瀑布流案例
    js基本知识6
    js基本知识5
  • 原文地址:https://www.cnblogs.com/xiegalpha/p/9231662.html
Copyright © 2020-2023  润新知