pytest断言assert原理如何深入解析?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1599个文字,预计阅读时间需要7分钟。
断言实现原理+前言+断言声明是程序调试的一个便捷方式。断言可以看作是一个debug工具,Python的实现也符合这个设计哲学。在Python中,assert语句的执行依赖于“这个条件。”
assert断言实现原理解析
前言
①断言声明是用于程序调试的一个便捷方式。
②断言可以看做是一个 debug 工具,Python 的实现也符合这个设计哲学。
③在 Python 中 assert 语句的执行是依赖于__debug__这个内置变量的,其默认值为True。且当__debug__为True时,assert 语句才会被执行。
扩展:有时为了调试,我们想在代码中加一些代码,通常是一些 print 语句,可以写为:# 在代码中的debug部分,__debug__内置变量的默认值为True;当运行程序时加上-o参数,则__debug__内置变量的值为False,不会运行调试语句
if __debug__:
pass
一旦调试结束,通过在命令行执行 -O 选项,会忽略这部分代码:python -o main.py
④若执行python脚本文件时加上-O参数,则内置变量__debug__为False。则asser语句不执行。
举例:新建testAssert.py脚本文件,内容如下:
print(__debug__)assert 1 > 2
当使用python testAssert.py运行时,内置属性__debug__会输出 True,assert 1 > 2 语句会抛出 AssertionError 异常。
本文共计1599个文字,预计阅读时间需要7分钟。
断言实现原理+前言+断言声明是程序调试的一个便捷方式。断言可以看作是一个debug工具,Python的实现也符合这个设计哲学。在Python中,assert语句的执行依赖于“这个条件。”
assert断言实现原理解析
前言
①断言声明是用于程序调试的一个便捷方式。
②断言可以看做是一个 debug 工具,Python 的实现也符合这个设计哲学。
③在 Python 中 assert 语句的执行是依赖于__debug__这个内置变量的,其默认值为True。且当__debug__为True时,assert 语句才会被执行。
扩展:有时为了调试,我们想在代码中加一些代码,通常是一些 print 语句,可以写为:# 在代码中的debug部分,__debug__内置变量的默认值为True;当运行程序时加上-o参数,则__debug__内置变量的值为False,不会运行调试语句
if __debug__:
pass
一旦调试结束,通过在命令行执行 -O 选项,会忽略这部分代码:python -o main.py
④若执行python脚本文件时加上-O参数,则内置变量__debug__为False。则asser语句不执行。
举例:新建testAssert.py脚本文件,内容如下:
print(__debug__)assert 1 > 2
当使用python testAssert.py运行时,内置属性__debug__会输出 True,assert 1 > 2 语句会抛出 AssertionError 异常。

