zoukankan      html  css  js  c++  java
  • 第一章 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 异常类型

  • 相关阅读:
    windbg 内核模式调试用户进程
    深发展银行编码器(解剖)
    SIM300常用命令
    tdi驱动 for vista or later
    vm命令行控制 (vmrun)
    WMI事件监控
    Visual C++ 中 #pragma 指示符的使用
    IOCP开发的几个概念
    移动web.config文件时造成的错误,
    提高网站速度|页面优化
  • 原文地址:https://www.cnblogs.com/anjhon/p/11907637.html
Copyright © 2011-2022 走看看