• 9.异常处理


    常见异常

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    AttributeError       试图访问一个对象没有的属性,比如foo.x,但是foo没有属性x
    FileNotFoundError    输入/输出异常;基本上是无法打开文件
    ImportError          无法引入模块或包;基本上是路径问题或名称错误
    IndentationError     语法错误(的子类) ;代码没有正确对齐
    IndexError           下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]
    KeyError             试图访问字典里不存在的键
    KeyboardInterrupt    Ctrl+C被按下
    NameError            使用一个还未被赋予对象的变量
    SyntaxError          Python代码非法,代码不能编译(个人认为这是语法错误,写错了)
    TypeError            传入对象类型与要求的不符合
    UnboundLocalError    试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,
                         导致你以为正在访问它
    ValueError           传入一个调用者不期望的值,即使值的类型是正确的
    name = [1,2,3]
    try:
        print(name[5])
    except IndexError as e:
        print("列表操作错误",e)
    IndexError
    data = {'zhang':12}
    try:
        print(data['li'])
    except KeyError as e:
        print("没有这个key",e)
    
    
    
    没有这个key 'li'
    KeyError
    try:
        open("tes.txt")
    
    except (KeyError,IndexError) as e :
        print("没有这个key",e)
    
    except IndexError as e :
        print("列表操作错误",e)
    
    except Exception as e:
        print("未知错误",e)
    
    else:
        print("一切正常")
    
    finally:
        print("不管有没有错,都执行")
    异常结构
    try:
        raise Exception('错误')
    except Exception as e:
        print(e)
    主动触发异常

      

  • 相关阅读:
    蓝牙模块连接后出现ANR,日志记录
    移动基站问题
    从地址栏获取字符串
    jquery升级换代
    手机屏幕的触点
    屏幕翻转后要干什么
    条件判断后吸住底部的总结
    mouseenter 和 mouseleave
    自动垂直居中的js
    数学方法代替浮动解决自动换行排列
  • 原文地址:https://www.cnblogs.com/cmd61/p/11094302.html
Copyright © 2020-2023  润新知