Python pass语句作用和Python assert断言函数的用法

作者:睿科知识云 时间:2021-03-19 12:14:08 

一、Python pass语句

在实际开发中,有时候我们会先搭建起程序的整体逻辑结构,但是暂时不去实现某些细节,而是在这些地方加一些注释,方面以后再添加代码,

请看下面的例子:

age = int( input("请输入你的年龄:") )
if age < 12 :
    print("婴幼儿")
elif age >= 12 and age < 18:
    print("青少年")
elif age >= 18 and age < 30:
    print("成年人")
elif age >= 30 and age < 50:
    #TODO: 成年人
else:
    print("老年人")

当年龄大于等于 30 并且小于 50 时,我们没有使用 print() 语句,而是使用了一个注释,希望以后再处理成年人的情况。当 Python 执行到该 elif 分支时,会跳过注释,什么都不执行。

但是 Python 提供了一种更加专业的做法,就是空语句 pass。pass 是 Python 中的关键字,用来让解释器跳过此处,什么都不做。

就像上面的情况,有时候程序需要占一个位置,或者放一条语句,但又不希望这条语句做任何事情,此时就可以通过 pass 语句来实现。使用 pass 语句比使用注释更加优雅。

使用 pass 语句更改上面的代码:

age = int( input("请输入你的年龄:") )
if age < 12 :
    print("婴幼儿")
elif age >= 12 and age < 18:
    print("青少年")
elif age >= 18 and age < 30:
    print("成年人")
elif age >= 30 and age < 50:
    pass
else:
    print("老年人")

运行结果:

请输入你的年龄:40↙

从运行结果可以看出,程序虽然执行到第 10 行代码,但是并没有进行什么操作。

二、Python assert断言函数

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

assert 语句的语法结构为:

assert 表达式

assert 语句的执行流程可以用 if 判断语句表示,如下所示:

if 表达式==True:
    程序继续执行
else:
    程序报 AssertionError 错误

有读者可能会问,明明 assert 会令程序崩溃,为什么还要使用它呢?这是因为,与其让程序在晚些时候崩溃,不如在错误条件出现时,就直接让程序崩溃,这有利于我们对程序排错,提高程序的健壮性。

因此,assert 语句通常用于检查用户的输入是否符合规定,还经常用作程序初期测试和调试过程中的辅助工具。

三、Python assert断言函数用法

下面的程序演示了 assert 语句的用法:

mathmark = int(input())
#断言数学考试分数是否位于正常范围内
assert 0 <= mathmark <= 100
#只有当 mathmark 位于 [0,100]范围内,程序才会继续执行
print("数学考试分数为:",mathmark)

运行该程序,测试数据如下:

90
数学考试分数为: 90

再次执行该程序,测试数据为:

159
Traceback (most recent call last):
  File "C:\Users\mengma\Desktop\file.py", line 3, in <module>
    assert 0 <= mathmark <= 100
AssertionError

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

来源:https://ruikezhishiyun.blog.csdn.net/article/details/123683049

标签:Python,pass,assert,断言,函数
0
投稿

猜你喜欢

  • javascript中使用replaceAll()函数实现字符替换的方法

    2024-04-10 16:18:47
  • python编程进阶之类和对象用法实例分析

    2022-04-01 23:59:03
  • 使用Python的turtle模块画国旗

    2021-10-22 12:31:10
  • Python中除法使用的注意事项

    2021-11-07 07:18:17
  • vue缓存的keepalive页面刷新数据的方法

    2023-07-02 17:01:00
  • SpringMVC4+MyBatis+SQL Server2014实现数据库读写分离

    2024-01-23 05:07:22
  • Websocket通信协议在数字孪生中的应用

    2024-04-30 08:55:46
  • 深入分析Mysql中limit的用法

    2024-01-20 12:56:08
  • Python爬虫之Selenium实现键盘事件

    2022-08-28 03:40:37
  • Pytorch 如何训练网络时调整学习率

    2022-01-31 20:08:48
  • 分享4个Python中的非常好用的自动化脚本

    2023-12-03 09:59:17
  • python interpolate插值实例

    2022-05-06 08:20:37
  • 解读Opencv中Filter2D函数的补全方式

    2022-06-16 23:11:15
  • Python中unittest的数据驱动详解

    2021-06-04 18:26:05
  • Python接口传输url与flask数据详解

    2023-03-18 20:00:42
  • Python绘制堆叠柱状图的实例

    2022-01-04 06:14:55
  • Mysql免安装版设置密码教程详解

    2024-01-26 21:25:59
  • 利用Python校准本地时间的方法教程

    2021-06-24 06:51:41
  • python函数的作用域及关键字详解

    2021-11-26 04:38:30
  • python简单实现获取当前时间

    2022-08-28 16:38:49
  • asp之家 网络编程 m.aspxhome.com