• 潭州课堂25班:Ph201805201 第十四课 异常,处理 (课堂笔记)


    程序难免会出现错误 :

      语法错误 ;

      逻辑错误;

    AttributeError  -->>  试图访问一个对象没有的属性,

    IOError  ----》》  输入输出异常

    IndeError  ---->>   下标索引起出序例范围,

    KeyError --->>>>  试图访问字典里不存在的key

    NameError  ---->>. 使用一个还未被赋值的对象变量,

    SyntaxError ----->>>  语法错误

    TypeError ----->>>>  传入对象类型与要求的不符合,

    UnboundLocalError ----->>  试图访问一个清空未被设置的局部变量,

    ValueError -----》》》  传入一个调用者不期望的值,

    捕捉异常:

    try:

              ….

              ….

    except:

        print ('出错')

    try:

        f = open('我为什么是个文件.txt')

        print (f. read() )

        f.close()

    except OSError:

      print ('文件出错')

    找不到”” 我为什么是个文件.txt”这个文件

    try:

        f = open('我为什么是个文件.txt')

        print (f. read() )

        f.close()

    except OSError as reason:

      print ('文件出错 出错的原因是:'+str(reason))

    ———》》》》

        文件出错
        出错的原因是:[Errno 2] No such file or directory: '我为什么是个文件.txt'

    try:

        x = 1+'1'

        f = open('我为什么是个文件.txt')

        print (f. read() )

        f.close()

    except (OSError, TypeError):      #    只要育错就抱错

        print ('出错')

    ————》》》

        出错

    异常处理的细分写法:
    # 异常处理的细分写法:
    try :
        li = [11,22]
        li[0]
        int ('abc')
    
    except IndexError as e:         #   一层比一层高的级别
        print('IndexError',e)
    except ValueError as f:
        print('ValueError',f)
    except Exception as h:
        print('Exception',h)
    
    else:               #   如果上边不出错,就执行这里的代码
        print('else')
    finally:                #   不管出不出错,这里都 要执行,
        print('......')
    

      

    断言,主动触发异常

    主动触发异常:
    try:
        raise Exception('主动触发异常')
    except Exception as e:
        print(e)
    
    断言:
    print(123)
    assert 1==1     #   断言,条件成立 往下走,不成立 报错
    print(456)
    

      

  • 相关阅读:
    人月神话第二遍(总)--读书笔记
    Python实现人脸检测(个人、多人、视频)
    软件体系架构的质量属性
    jdk1.8 使用的是什么垃圾回收器?
    【深入理解Java虚拟机】垃圾回收
    P2167 [SDOI2009]Bill的挑战
    二项式反演基础
    P5039 [SHOI2010]最小生成树
    快速莫比乌斯/沃尔什变换 (FMT/FWT)
    莫比乌斯反演
  • 原文地址:https://www.cnblogs.com/gdwz922/p/9203521.html
Copyright © 2020-2023  润新知