zoukankan      html  css  js  c++  java
  • Python assert 断言

    assert断言语句用来声明某个条件是真的,其作用是测试一个条件(condition)是否成立,如果不成立,则抛出异常。


    assert一般用法:

    assert condition

    如果condition为false,就raise一个AssertionError出来。逻辑上等同于:
    if not condition:
        raise AssertionError()



    另一种使用方法:

    assert condition,expression


    如果condition为false,就raise一个描述为 expression 的AssertionError出来。逻辑上等同于:
    if not condition:
            raise AssertionError(expression)



    assert使用示例:

    # -*- coding: utf-8 -*-
    
    v1 = 1
    v2 = 2
    
    assert (v1 < v2)
    # assert (v1 > v2)
    assert (v1 > v2),'{0} is not bigger than {1}'.format(v1,v2)

    以上代码抛出异常:

    Traceback (most recent call last):
      File "xxx", line 8, in <module>
        assert (v1 > v2),'{0} is not bigger than {1}'.format(v1,v2)
    AssertionError: 1 is not bigger than 2

    断言跟异常的区别:

    断言是用来检查非法情况而不是错误情况的,用来帮开发者快速定位问题的位置。
    异常处理用于对程序发生异常情况的处理,增强程序的健壮性和容错性。


    对一个函数而言,一般情况下,断言用于检查函数输入的合法性,要求输入满足一定的条件才能继续执行;
    在函数执行过程中出现的异常情况使用异常来捕获。


  • 相关阅读:
    Js之Location对象
    Hibernate事务传播性
    Java异常基础Exception
    JVM垃圾回收机制
    JDK动态代理例子
    Hibernate之通过hibernate.cfg.xml配置文件访问数据库的例子
    开源wkhtmltopdf使用心得 (四)
    开源wkhtmltopdf使用心得 (三)
    开源wkhtmltopdf使用心得 (二)
    开源wkhtmltopdf使用心得 (一)
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9411757.html
Copyright © 2011-2022 走看看