Python assert关键字原理及实例解析

yipeiwu_com5年前Python基础

这篇文章主要介绍了Python assert关键字原理及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Python assert(断言)用于判断一个表达式,在表达式条件为 False 的时候触发异常。

断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况。

语法格式:

assert expression

等价于:

if not expression:
  raise AssertionError

assert后可跟参数:

assert expression[,assert_error_msg]

等价于:

if not expression:
  raise AssertionError(assert_error_msg)

assert True 举例:

assert True, '断言失败,返回错误'
print('断言成功,执行接下来的代码')

assert False, '断言失败,返回错误'
print('断言成功,执行接下来的代码')

执行结果:

断言成功,执行接下来的代码
Traceback (most recent call last):
 File "<stdin>", line 4, in <module>
  assert False, '断言失败,返回错误'
AssertionError: 断言失败,返回错误

其它栗子:

# assert True 的栗子
assert 1 == 1
assert '123'.isdigit()
assert 123
assert 'Hello World!'
assert [1, 2, 3]
assert (1, 2, 3)
assert {'a': 1}

# assert False 的栗子
assert 1 == 2
assert ''
assert []
assert {}
assert ()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python for和else语句趣谈

老婆给当程序员的老公打电话:“下班顺路买一斤包子带回来,如果看到卖西瓜的,买一个。”当晚,程序员老公手捧一个包子进了家门……老婆怒道:“你怎么就买了一个包子?”老公答曰:“因为看到了卖...

spark: RDD与DataFrame之间的相互转换方法

spark: RDD与DataFrame之间的相互转换方法

DataFrame是一个组织成命名列的数据集。它在概念上等同于关系数据库中的表或R/Python中的数据框架,但其经过了优化。DataFrames可以从各种各样的源构建,例如:结构化数据...

python主线程与子线程的结束顺序实例解析

这篇文章主要介绍了python主线程与子线程的结束顺序实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 引用自 主线程退出对子线...

在python Numpy中求向量和矩阵的范数实例

在python Numpy中求向量和矩阵的范数实例

np.linalg.norm(求范数):linalg=linear(线性)+algebra(代数),norm则表示范数。 函数参数 x_norm=np.linalg.norm(x,...

Linux下Python安装完成后使用pip命令的详细教程

Linux下Python安装完成后使用pip命令的详细教程

一、很多读者Python安装完成之后,想要下载相关的包,例如:numpy、pandas等Python中这些基础的包,但是,发现pip根本用不了,主要表现在一下几种情况: 二、出现这种情...