Python断言

Python断言

  • [1 什么是Python断言](#1 什么是Python断言)
  • [2 使用场景](#2 使用场景)
  • [3 常用断言函数](#3 常用断言函数)

1 什么是Python断言

断言就是断定指定条件一定成立,若不成立则抛出异常。Python断言关键字为:assert,断言也可以理解为简单版的 if 语句,判断条件的值,若为True继续运行,否则停止运行并抛出AssertionError异常。语法格式如下:

assert 条件表达式

if 语句格式如下:

if not 条件表达式:

... raise AssertionError

2 使用场景

断言是为了让开发者知道程序发生异常了,主要应用于程序的调试和自检,不是为了处理错误,程序的bug还是要靠 try... except 解决。

以下示例,call_some函数中获得的列表元素个数必须是100个,否则程序就有问题,这种情况下就可以使用断言:

bash 复制代码
def some():
	my_list = []
	... ...
	return my_list

def call_some():
	"""调用 some 函数"""
	res = some()
	# 列表个数必须为100个
	assert len(res) == 100
	pass

3 常用断言函数

  • assertEqual(a,b,msg=msg):判断两个值是否相等
  • assertNotEqual(a,b,msg=msg):判断两个值是否不相等
  • assertTrue(a,msg=none):判断变量是否为 True
  • assertFalse(a,msg=none):判断变量是否为 False
  • assertIsNone(obj=''):判断 obj 是否为空
  • assertIsNotNone(obj=''):判断 obj 是否不为空
  • assertIn(item, list):判断item是否在list中
  • assertNotIn(item, list):判断item是否不在list中
相关推荐
2501_921649494 分钟前
股指期货 API 入门指南:如何获取实时行情与构建交易系统
python·websocket·金融·区块链·restful
水天需0108 分钟前
HISTCONTROL 介绍
linux
Full Stack Developme27 分钟前
Spring Security 与 Apache Shiro 两大安全框架比较
spring boot·python·安全
杰瑞哥哥32 分钟前
快速搭建Web前端(streamlit使用指南)
python·信息可视化·web·模型部署
小途软件33 分钟前
基于计算机视觉的课堂行为编码研究
人工智能·python·深度学习·计算机视觉·语言模型·自然语言处理·django
智航GIS34 分钟前
9.2 多进程入门
数据库·python
小途软件34 分钟前
基于计算机视觉的桥梁索力测试方法
人工智能·python·语言模型·自然语言处理·django
南工孙冬梅37 分钟前
Linux中安装配置nfs
linux·运维·php
水天需01040 分钟前
HISTCMD 介绍
linux
yousuotu42 分钟前
基于Python实现水果新鲜度分类
开发语言·python·分类