美文网首页
python之assert

python之assert

作者: 每天进步一点点变成更好的自己 | 来源:发表于2022-09-30 07:28 被阅读0次

    什么是assert

    python的assert是一个debug的工具,主要用于测试一个条件是否满足。
    条件满足:类似于执行了pass的动作,什么也不做。
    条件不满足:抛出异常AssertionError,并返回具体的错误信息(option)。
    assert语法:assert_stmt ::= "assert" expression ["," expression]
    实例:

    assert 1 == 2
    类似下面2句
    if __debug__:
        if not expression: raise AssertionError
    
    
    assert 1 == 2,  'assertion is wrong'
    # 输出AssertionError: assertion is wrong
    类似下面2句
    if __debug__: #__debug__是一个常数。
        if not expression1: raise AssertionError(expression2)
    
    
    错误演示,assert后面不能加括号,加了括号assert检查永远不会fail,只会SyntaxWarning。
    assert(1 == 2, 'This should fail')
    # 输出
    <ipython-input-8-2c057bd7fe24>:1: SyntaxWarning: assertion is always true, perhaps remove parentheses?
      assert(1 == 2, 'This should fail')
    

    2.assert的用法

    assert通常是用来对代码进行必要的self check,表明你很确定这种情况一定发生,或者一定不会发生。使用assert时,一定不要加上括号,否则无论表示对或错,assert检查永远不会fail。程序中的assert,可以通过-o 等选项被全局disable。

    相关文章

      网友评论

          本文标题:python之assert

          本文链接:https://www.haomeiwen.com/subject/zbpgqrtx.html