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 相关文章推荐
下载安装setuptool和pip linux安装pip    
Jan 24 Python
Python队列的定义与使用方法示例
Jun 24 Python
Django实战之用户认证(初始配置)
Jul 16 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
May 23 Python
解决TensorFlow GPU版出现OOM错误的问题
Feb 03 Python
python如何将两张图片生成为全景图片
Mar 05 Python
pandas抽取行列数据的几种方法
Dec 13 Python
基于Python的接口自动化读写excel文件的方法
Jan 15 Python
Python3利用scapy局域网实现自动多线程arp扫描功能
Jan 21 Python
python快速安装OpenCV的步骤记录
Feb 22 Python
教你利用Selenium+python自动化来解决pip使用异常
May 20 Python
Python使用mitmproxy工具监控手机 下载手机小视频
Apr 18 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
PHPWind与Discuz截取字符函数substrs与cutstr性能比较
2011/12/05 PHP
浅谈PHP中的
2016/04/23 PHP
Laravel4中的Validator验证扩展用法详解
2016/07/26 PHP
提高网站信任度的技巧
2008/10/17 Javascript
window.location.href = window.location.href 跳转无反应 a超链接onclick事件写法
2013/08/21 Javascript
JS 两个字符串时间的天数差计算
2013/08/25 Javascript
探讨jQuery的ajax使用场景(c#)
2013/12/03 Javascript
判断及设置浏览器全屏模式
2014/04/20 Javascript
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
JavaScript实现同一页面内两个表单互相传值的方法
2015/08/12 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
javascript中错误使用var造成undefined
2016/03/31 Javascript
JS返回只包含数字类型的数组实例分析
2016/12/16 Javascript
canvas实现图片根据滑块放大缩小效果
2017/02/24 Javascript
node.js利用redis数据库缓存数据的方法
2017/03/01 Javascript
解析jquery easyui tree异步加载子节点问题
2017/03/08 Javascript
微信小程序点击控件修改样式实例详解
2017/07/07 Javascript
ES6中Array.includes()函数的用法
2017/09/20 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
Vue+Node实现的商城用户管理功能示例
2019/12/23 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
2020京东618叠蛋糕js脚本(亲测好用)
2020/06/02 Javascript
通过实例解析javascript Date对象属性及方法
2020/11/04 Javascript
python的pip安装以及使用教程
2018/09/18 Python
pyspark给dataframe增加新的一列的实现示例
2020/04/24 Python
iPython pylab模式启动方式
2020/04/24 Python
pycharm中leetcode插件使用图文详解
2020/12/07 Python
Travelstart沙特阿拉伯:廉价航班、豪华酒店和实惠的汽车租赁优惠
2019/04/06 全球购物
Looking4Parking美国:全球排名第一的机场停车比较品牌
2019/08/26 全球购物
DTD的含义以及作用
2014/01/26 面试题
高级Java程序员面试题
2016/06/23 面试题
物流管理专业应届生求职信
2013/11/21 职场文书
个人四风对照检查材料
2014/09/26 职场文书
应聘教师自荐信
2015/03/26 职场文书
慈善献爱心倡议书
2015/04/27 职场文书
在ubuntu下安装go开发环境的全过程
2022/08/05 Golang