• python assert的作用


    一、python assert的作用:

    根据Python 官方文档解释(https://docs.python.org/3/reference/simple_stmts.html#assert), "Assert statements are a convenient way to insert debugging assertions into a program".

    二、一般的用法是:

    assert condition

    用来让程序测试这个condition,如果condition为false,那么raise一个AssertionError出来。逻辑上等同于:

    if not condition:
        raise AssertionError()

    比如如下的例子:

    >>> assert 1==1
    >>> assert 1==0
    Traceback (most recent call last):
      File "<pyshell#1>", line 1, in <module>
        assert 1==0
    AssertionError
    >>> assert True
    >>> assert False
    Traceback (most recent call last):
      File "<pyshell#3>", line 1, in <module>
        assert False
    AssertionError
    >>> assert 3<2
    Traceback (most recent call last):
      File "<pyshell#4>", line 1, in <module>
        assert 3<2
    AssertionError

    三、如何为assert断言语句添加异常参数

      assert的异常参数,其实就是在断言表达式后添加字符串信息,用来解释断言并更好的知道是哪里出了问题。格式如下:

    assert expression [, arguments]
    assert 表达式 [, 参数]

    比如如下的例子:

    >>> assert len(lists) >=5,'列表元素个数小于5'

    Traceback (most recent call last):
    File "D:/Data/Python/helloworld/helloworld.py", line 1, in <module>
    assert 2>=5,'列表元素个数小于5'
    AssertionError: 列表元素个数小于5

    >>> assert 2==1,'2不等于1'

    Traceback (most recent call last):
    File "D:/Data/Python/helloworld/helloworld.py", line 1, in <module>
    assert 2==1,'2不等于1'
    AssertionError: 2不等于1

    --------------------------------------------------------------------

    参考链接:

    https://www.cnblogs.com/liuchunxiao83/p/5298016.html

    https://www.cnblogs.com/cedrelaliu/p/5948567.html

    
    
  • 相关阅读:
    Codeforces Round #594 (Div. 2) ABC题
    Codeforces Round #596 (Div. 2) ABCD题
    数据结构实验5——二叉树
    数据结构实验4——字符串匹配
    数据结构实验3——用栈求解算术表达式
    友链
    Codeforces Round #577 (Div. 2)
    Educational Codeforces Round 70 (Rated for Div. 2)
    Codeforces Round #578 (Div. 2)
    2020 Multi-University Training Contest 10(待补
  • 原文地址:https://www.cnblogs.com/hezhiyao/p/7805278.html
Copyright © 2020-2023  润新知