当前位置:   article > 正文

python中的asset_Python中的assert语句

python assert and

Python的assert,是个语句,不是一个函数,所谓assert statement。

>>>

>>>assert 1==1 and 2==2

>>>

>>>assert 1==1 and 2==3

Traceback (most recent call last):

File "", line 1, in

AssertionError

>>>

如果assert后面的语句是False,就会有一个AssertionError异常被抛出。

Python教材中有这样一句话:

In the current implementation, the built-in variable __debug__ is True under normal circumstances, False when optimization is requested (command line option -O). The current code generator emits no code for an assert statement when optimization is requested at compile time.

assert语句只在debug模式下有效,使用-O参数优化之后,assert就等同于不存在了。(-OO参数,连__doc__都消失)。可以用这个方式:

C:\Users\Administrator>python -O

Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AM

D64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>>

>>> assert 1==1

>>>

>>> assert 1==2

>>>

>>>__debug__

False

>>>

关于-O和-OO优化参数,请见下图示例:

python的-O和-OO优化参数

使用assert涉及到编程思想,有人说使用assert是一种防御方式的编程,可以当成比注释更好的手段。

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

闽ICP备14008679号