python 错误处理 assert详解


Posted in Python onApril 20, 2020

assert是断言的意思,解释为:我断定这个程序执行之后或者之前会有这样的结果,如果不是,那就扔出一个错误。

语法:

assert expression [, arguments]
assert 表达式 [, 参数]

举例:

def foo(s):
 n = int(s)
 assert n != 0, 'n is zero!'
 return 10 / n

def main():
 foo('0')

>Traceback (most recent call last):
 ...
AssertionError: n is zero!

assert的意思是,表达式n != 0应该是True,否则,根据程序运行的逻辑,后面的代码肯定会出错。

如果断言失败,assert语句本身就会抛出AssertionError:

启动Python解释器时可以用-O参数来关闭assert

补充知识:python中assertion异常

python中的assert是一种最简单的异常机制

assert的基本语法是:

"assert" expression1 ["," expression2]

expression1用于判断生成布尔值,当expression1为假的时候,则抛出异常,[]中的内容可选,即用户可以选择异常的提示值:

>>>a=23
>>>assert a==23
>>>a=a-1
>>>assert a==23
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AssertionError
>>>assert a==23 , "error1"
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AssertionError: error1

以上这篇python 错误处理 assert详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pytorch 把MNIST数据集转换成图片和txt的方法
May 20 Python
TensorFlow数据输入的方法示例
Jun 19 Python
Python中存取文件的4种不同操作
Jul 02 Python
Python判断telnet通不通的实例
Jan 26 Python
python实现KNN分类算法
Oct 16 Python
python实现图片上添加图片
Nov 26 Python
python路径的写法及目录的获取方式
Dec 26 Python
tensorboard 可以显示graph,却不能显示scalar的解决方式
Feb 15 Python
Python3的socket使用方法详解
Feb 18 Python
python使用selenium爬虫知乎的方法示例
Oct 28 Python
python包的导入方式总结
Mar 02 Python
人工智能深度学习OpenAI baselines的使用方法
May 20 Python
解决Jupyter Notebook使用parser.parse_args出现错误问题
Apr 20 #Python
在ipython notebook中使用argparse方式
Apr 20 #Python
Python绘制全球疫情变化地图的实例代码
Apr 20 #Python
spyder 在控制台(console)执行python文件,debug python程序方式
Apr 20 #Python
python实现小程序推送页面收录脚本
Apr 20 #Python
在spyder IPython console中,运行代码加入参数的实例
Apr 20 #Python
如何查看Django ORM执行的SQL语句的实现
Apr 20 #Python
You might like
PHP 小心urldecode引发的SQL注入漏洞
2011/10/27 PHP
ThinkPHP写第一个模块应用
2012/02/20 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
2014/08/18 PHP
PHP钩子实现方法解析
2019/05/21 PHP
在JavaScript中,为什么要尽可能使用局部变量?
2009/04/06 Javascript
火狐textarea输入法的bug的触发及解决
2013/07/24 Javascript
时间戳转换为时间 年月日时间的JS函数
2013/08/19 Javascript
jquery获得keycode的示例代码
2013/12/30 Javascript
JQuery中使用on方法绑定hover事件实例
2014/12/09 Javascript
后台获取ZTREE选中节点的方法
2015/02/12 Javascript
浅谈javascript中call()、apply()、bind()的用法
2015/04/20 Javascript
详解AngularJS中自定义过滤器
2015/12/28 Javascript
js小数计算小数点后显示多位小数的实现方法
2016/05/30 Javascript
JS常用字符串方法(推荐)
2021/01/15 Javascript
浅析$(function) ready和onload 的区别
2016/09/03 Javascript
Javascript基础回顾之(一) 类型
2017/01/31 Javascript
vue用Object.defineProperty手写一个简单的双向绑定的示例
2018/07/09 Javascript
webpack4 SCSS提取和懒加载的示例
2018/09/03 Javascript
关于vue的npm run dev和npm run build的区别介绍
2019/01/14 Javascript
在 Vue.js中优雅地使用全局事件的方法
2019/02/01 Javascript
Node.js + express实现上传大文件的方法分析【图片、文本文件】
2019/03/14 Javascript
vue cli3适配所有端方案的实现
2020/04/13 Javascript
vue实践---根据不同环境,自动转换请求的url地址操作
2020/09/21 Javascript
原生JavaScript实现轮播图
2021/01/10 Javascript
[20:39]DOTA2-DPC中国联赛 正赛开幕式 1月18日
2021/03/11 DOTA
Python中集合的内建函数和内建方法学习教程
2015/08/19 Python
对Python模块导入时全局变量__all__的作用详解
2019/01/11 Python
python广度优先搜索得到两点间最短路径
2019/01/17 Python
Python3.0中普通方法、类方法和静态方法的比较
2019/05/03 Python
python字符串判断密码强弱
2020/03/18 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
美国领先的礼品卡网站:GiftCards.com
2016/11/02 全球购物
英国床垫在线:Mattress Online
2016/12/07 全球购物
介绍一下Transact-SQL中SPACE函数的用法
2015/09/01 面试题
女儿十岁生日答谢词
2014/01/27 职场文书
小学教师节活动总结
2015/03/20 职场文书