zoukankan      html  css  js  c++  java
  • 异常处理

    异常模板

    try:
        pass
    except Exception as e:   # Exception能捕获所有异常,语法错误、缩进错误无法抓取,都没有执行下来
        print("出现异常:",e)
    else:
      print("一切正常") # 不出错时执行(可不写)
    finally:
       pass # 无论是否异常,最终都会执行(可不写)

    常用的异常种类

    AttributeError 试图访问一个对象没有的属性,比如foo.x,但是foo没有属性x
    IOError 输入/输出异常;基本上是无法打开文件
    ImportError 无法引入模块或包;基本上是路径问题或名称错误
    IndentationError 语法错误(的子类) ;代码没有正确对齐
    IndexError 下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]
    KeyError 试图访问字典里不存在的键
    KeyboardInterrupt Ctrl+C被按下
    NameError 使用一个还未被赋予对象的变量
    SyntaxError Python代码非法,代码不能编译
    TypeError 传入对象类型与要求的不符合
    UnboundLocalError 试图访问一个还未被设置的局部变量
    ValueError 传入一个调用者不期望的值,即使值的类型是正确的
    

     主动触发异常

    try:
        raise Exception("错误了...")   # 抛出异常(Exception可改为自定义的异常)
    except Exception as e:
        print(e)
    

     断言

     assert的异常参数,其实就是在断言表达式后添加字符串信息,用来解释断言并更好的知道是哪里出了问题。格式如下:
    assert expression [, arguments]
    assert 表达式 [, 参数]
    
    assert len(lists) >=5,'列表元素个数小于5'
    
    assert 2==1,'2不等于1'
    
  • 相关阅读:
    FLV视频转换的利器 ffmpeg.exe
    ffmpeg参数设定解说
    SQL里加减日期
    SQL Server 获得影响行数
    CheckBoxList RadioButtonList 不生成table 表示
    SQL语句 从一个表读取数据,写入到另一个表的相同字段中
    ffmpeg和Mencoder使用实例小全
    执行存储过程出现:"不是有效的标识符。"
    SQL 格式化超长的字段
    js遍历选中的dom元素
  • 原文地址:https://www.cnblogs.com/sshcy/p/8178080.html
Copyright © 2011-2022 走看看