python raise的基本使用


Posted in Python onSeptember 10, 2020

简介

当程序出现错误,python会自动引发异常,也可以通过raise显示地引发异常。一旦执行了raise语句,raise后面的语句将不能执行。

1、演示raise用法

try:
  s = None
  if s is None:
    print("s 是空对象")
    # 如果引发NameError异常,后面的代码将不能执行
    raise NameError
  # 这句不会执行,但是后面的except还是会走到
  print(len(s))
except TypeError:
  print("空对象没有长度")
 
s = None
if s is None:
  raise NameError
# 如果不使用try......except这种形式,那么直接抛出异常,不会执行到这里
print("is here?")

2、触发异常

我们可以使用raise语句自己触发异常

raise语法格式如下:

raise [Exception [, args [, traceback]]]

语句中 Exception 是异常的类型(例如,NameError)参数标准异常中任一种,args 是自已提供的异常参数。

最后一个参数是可选的(在实践中很少使用),如果存在,是跟踪异常对象。

3、实例

一个异常可以是一个字符串,类或对象。 Python的内核提供的异常,大多数都是实例化的类,这是一个类的实例的参数。

def mye(level):
  if level < 1:
    raise Exception("Invalid level!")
    # 触发异常后,后面的代码就不会再执行
 
try:
  # 触发异常
  mye(0)
except Exception as err:
  print(1, err)
else:
  print(2)

以上就是python raise的基本使用的详细内容,更多关于python raise的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Go语言基于Socket编写服务器端与客户端通信的实例
Feb 19 Python
基于python yield机制的异步操作同步化编程模型
Mar 18 Python
Python制作钉钉加密/解密工具
Dec 07 Python
利用标准库fractions模块让Python支持分数类型的方法详解
Aug 11 Python
Python操作json的方法实例分析
Dec 06 Python
基于wxPython的GUI实现输入对话框(1)
Feb 27 Python
python3.5安装python3-tk详解
Apr 26 Python
python求加权平均值的实例(附纯python写法)
Aug 22 Python
解决Tensorflow sess.run导致的内存溢出问题
Feb 05 Python
学点简单的Django之第一个Django程序的实现
Feb 24 Python
matplotlib部件之套索Lasso的使用
Feb 24 Python
python 中的jieba分词库
Nov 23 Python
Python常用数字处理基本操作汇总
Sep 10 #Python
Python通用唯一标识符uuid模块使用案例
Sep 10 #Python
Python编写单元测试代码实例
Sep 10 #Python
python super()函数的基本使用
Sep 10 #Python
Python如何实现机器人聊天
Sep 10 #Python
Python 必须了解的5种高级特征
Sep 10 #Python
matplotlib 多个图像共用一个colorbar的实现示例
Sep 10 #Python
You might like
利用Laravel生成Gravatar头像地址的优雅方法
2017/12/30 PHP
php远程请求CURL实例教程(爬虫、保存登录状态)
2020/12/10 PHP
jQuery获取注册信息并提示实现代码
2013/04/21 Javascript
JS 两个字符串时间的天数差计算
2013/08/25 Javascript
jquery淡化版banner异步图片文字效果切换图片特效
2014/04/08 Javascript
jQuery向后台传入json格式数据的方法
2015/02/13 Javascript
js实现点击图片改变页面背景图的方法
2015/02/28 Javascript
JavaScript实现单击下拉框选择直接跳转页面的方法
2015/07/02 Javascript
javascript实现unicode与ASCII相互转换的方法
2015/12/10 Javascript
浏览器兼容性问题大汇总
2015/12/17 Javascript
javaScript给元素添加多个class的简单实现
2016/07/20 Javascript
在js中实现邮箱格式的验证方法(推荐)
2016/10/24 Javascript
Jquery 整理元素选取、常用方法一览表
2016/11/26 Javascript
js仿拉勾网首页穿墙广告效果
2017/03/08 Javascript
JS实现电商放大镜效果
2017/08/24 Javascript
基于rollup的组件库打包体积优化小结
2018/06/18 Javascript
jQuery实现的简单日历组件定义与用法示例
2018/12/24 jQuery
如何解决webpack-dev-server代理常切换问题
2019/01/09 Javascript
JavaScript基于遍历操作实现对象深拷贝功能示例
2019/03/05 Javascript
vue2.x 对象劫持的原理实现
2020/04/19 Javascript
[02:00]DOTA2英雄COSPLAY闹市街头巡游助威2015国际邀请赛
2015/08/02 DOTA
python计算时间差的方法
2015/05/20 Python
python模块简介之有序字典(OrderedDict)
2016/12/01 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
2018/04/11 Python
python判断字符串或者集合是否为空的实例
2019/01/23 Python
TensorFlow keras卷积神经网络 添加L2正则化方式
2020/05/22 Python
Python获取excel内容及相关操作代码实例
2020/08/10 Python
Python的信号库Blinker用法详解
2020/12/31 Python
国际鲜花速递专家:Floraqueen
2016/11/24 全球购物
屈臣氏俄罗斯在线商店:Watsons俄罗斯
2020/08/03 全球购物
如何从一个文件档案的尾端新增记录
2016/12/02 面试题
应届生求职信写作技巧
2013/10/24 职场文书
租赁协议书范本
2014/04/22 职场文书
2015年学校少先队工作总结
2015/07/20 职场文书
优秀教师主要事迹材料
2015/11/04 职场文书
Python 语言实现六大查找算法
2021/06/30 Python