• 技术文章 >Python技术 >Python基础教程

    python中assert检验参数

    小妮浅浅小妮浅浅2021-04-19 10:29:46原创3617

    Python的assert语句,可以说是一个debug的好工具,主要用于测试一个条件是否满足。如果测试的条件满足,则什么也不做,相当于执行了 pass 语句;如果测试条件不满足,便会抛出异常 AssertionError,并返回具体的错误信息(optional)。

    它的具体语法是下面这样的:

    assert_stmt ::=  "assert" expression ["," expression]

    此外,一定记住,不要在使用 assert 时加入括号,比如下面这个例子:

    assert(1 == 2, 'This should fail')# 输出:1: SyntaxWarning: assertion is always true, perhaps remove parentheses?  assert(1 == 2, 'This should fail')

    如果你按照这样来写,无论表达式对与错(比如这里的 1 == 2 显然是错误的),assert 检查永远不会 fail,程序只会给你 SyntaxWarning。

    正确的写法,应该是下面这种不带括号的写法:

    assert 1 == 2, 'This should fail'# 输出AssertionError: This should fail

    总的来说,assert 在程序中的作用,是对代码做一些 internal 的 self-check。使用 assert,就表示你很确定。这个条件一定会发生或者一定不会发生。

    Assert是程序员用于保证程序的正确性,不是用于检查使用者输入参数是否合法,换言之,Assert可以简单的理解为程序员的debug工具,正式的代码中应该使用raise来检查用户输入是否正确,如下:

    # assert
    assert port >= minimum, 'Unexpected port %d when minimum was %d.' % (port, minimum)
    # raise
    if minimum < 1024:
          raise ValueError('Minimum port must be at least 1024, not %d.' % (minimum,))

    以上就是我们在本篇中关于assert的学习,相信大家已经知道assert不是用来检验参数是否正确了,更多其它的内容还需要小伙伴们自己探索。

    (推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)

    专题推荐:python assert检验参数
    上一篇:Python里SimpleQueue和LifoQueue的用法 下一篇:python中local本地对象

    相关文章推荐

    • Python assert断言函数及用法• Python之assert断言介绍• python assert函数是什么以及如何使用?• python中assert断言语句怎么用?• Python中assert函数的具体使用方法

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网