zoukankan      html  css  js  c++  java
  • 潭州课堂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)
    

      

  • 相关阅读:
    pandas基础--汇总和计算描述统计
    pandas基础--基本功能
    pandas rank()函数简介
    pandas基础--数据结构:索引对象
    pandas基础--数据结构:DataFrame
    pands基础--数据结构:Series
    numpy cumsum()函数简介
    numpy基础--random模块:随机数生成
    vueJS 一天上手到精通
    set .net principle
  • 原文地址:https://www.cnblogs.com/gdwz922/p/9203521.html
Copyright © 2011-2022 走看看