当前位置:   article > 正文

Python assert断言函数_python里的assert函数

python里的assert函数

Python assert断言函数及用法

Python 中assert 语句,又称断言语句,可以看做是功能缩小版的 if 语句。它用于判断某个表达式的值,如果值为真,则继续执行;反之,Python 解释器会报 AssertionError 错误

assert 语法结构可以为:
assert + expression
等价于:
if 表达式==True:
    程序继续执行输出结果
else:
    程序报 AssertionError 错误


assert 语法结构也可以为(带有参数):
assert + expression [, arguments]
等价于:
if expression==True:
else:
    程序报 AssertionError(arguments)错误
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • assert 会使程序崩溃

那我们为什么还要用。与其让程序在晚些时候崩溃,不如在错误条件出现时,就直接让程序崩溃,这有利于我们对程序排错,从而提高我们程序的健壮性。
故assert 语句通常用于检查用户的输入是否符合规定,还经常用作程序初期测试和调试过程中的辅助工具。

  • 例如:
math = int(input())
assert ( 0 <= math <= 100 )
print("程序继续执行输出结果!", math)
 #断言函数判断math是否位于正常范围内assert 0 <= math <= 100#只有当 math 位于 [0,100]范围内,程序才会继续执行print("程序继续执行输出结果!", math)
#等价于if else语句
import math
math = int(input())
if 0 <= math <= 100 :
    print(" 程序继续执行输出结果!")
else:
    print("程序报 AssertionError 错误!")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

输出结果:


 1. 66

程序继续执行输出结果! 66

 2. 66

 程序继续执行输出结果!
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

再次执行该程序,输入122:超出了正常范围就直接报AssertionError 错误


 1. 122

Traceback (most recent call last):
  File "D:/PycharmProjects/untitled1/min.py", line 11, in <module>
    assert ( 0 <= math <= 100 )
AssertionError

 2.  122
程序报 AssertionError 错误!

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

从上面可以看到,当 assert 语句后的表达式值为真时,程序继续执行;反之,程序停止执行,并报 AssertionError 错误。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/559904
推荐阅读
相关标签
  

闽ICP备14008679号