• 第一章 1.14 异常捕获


    一. 异常

    程序在运行过程中的报错就叫异常



    二. 异常捕获

    1. 使用异常捕获的场景

    在知道某个位置可能会出现异常,但开发者无法控制时使用

    2. 捕获异常

    ①:捕获任何异常

    """
    try:
        代码块一(可能出现异常的代码)
    except:
        代码块二(对异常进行处理)
    finally:
        代码块三
    其他语句
    """
    
    • 先执行代码块1,如果异常,直接执行代码块2,依次往后执行;若代码块1没有异常,不执行代码块2,往后执行

    ②:捕获针对异常

    """
    try:
        代码块一(可能出现异常的代码)
    except 异常类型:
        代码块二(对异常进行处理)
    其他语句
    """
    
    • 先执行代码块1,如果异常,检查该异常是否和except后的异常类型是否一致若一致,执行代码块2,依次往后执行;若不一致,程序崩溃.

    ③:捕获多个异常一(相同处理)

    """
    try:
        代码块一(可能出现异常的代码)
    except (异常类型1, 异常类型2...):
        代码块二(对异常进行处理)
    其他语句
    """
    

    ④:捕获多个异常一(不同处理)

    """
    try:
        代码块一(可能出现异常的代码)
    except (异常类型1):
        代码块二(对异常进行处理)
    except (异常类型2):
        代码块三(对异常进行处理)
    except (异常类型3):
        代码块四(对异常进行处理)
        ...  
    其他代码
    """
    


    三. 关键字finally

    在以上四个捕获异常的方法中都可以在最后加上finally关键字,它的作用是:不管try中的代码出现任何情况,finally后的代码都会执行

    try:
        print({'name': 'an', 'age': 29}['gender'])
        print('hello'[19])
        print(max([10, 'asd', True]))
    except IndexError:
        print('出现异常')
    finally:
        print('写遗书')
    

    四. 抛出异常

    raise 异常类型

  • 相关阅读:
    vue中dom元素和组件的获取
    Vue.js中父子组件之间的传值和传方法
    IDEA中的快捷键
    springmvc中使用controller时,跳转视图会带上外层的地址
    通配符的匹配很全面, 但无法找到元素 'mvc:annotation-driven' 的声明
    vue中的组件
    vuejs
    成员变量(实例变量)&局部变量&静态变量(类变量)的区别
    代码块
    重载&重写
  • 原文地址:https://www.cnblogs.com/anjhon/p/11907637.html
Copyright © 2020-2023  润新知