首页
学习
活动
专区
圈层
工具
发布

Python编程思想(10):断言

断言与if语句的功能类似,都可以对一个表达式进行判断,如果表达式的值是False、0、[]等值时,就被认定为“假”,其他的值就被认定为“真”。只是为“假”时的处理方式不同。当if语句的表达式为“假”时,就不会执行if语句中的代码。而断言如果为“假”,则会抛出异常(AssertionError错误)

示例代码:断言.py

代码语言:javascript
复制
s_age = input("请输入您的年龄:")
age = int(s_age)
assert 18 < age < 60
print("您输入的年龄必须在18到60之间")

在这段代码中,要求age的值必须在18到60之间。如果输入的年龄在符合要求,就会继续执行断言后面的语句,否则会抛出异常。

现在运行程序,并输入25,就会在Console中输入如下的信息:

请输入您的年龄:25 您输入的年龄必须在18到60之间

如果输入70,就会抛出如图1所示的异常。

图1

其实断言也可以用if语句代替,代码如下:

示例代码:用if取代断言.py

代码语言:javascript
复制
s_age = input("请输入您的年龄:")
age = int(s_age)
if age <= 18 or age >= 60:
    raise AssertionError   # 抛出AssertionError错误,关于异常部分,在后面的章节会详细
代码语言:javascript
复制
print("您输入的年龄必须在18到60之间")

不过为了方便,在这种情况下,还是用断言比较好。

下一篇
举报
领券