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 相关文章推荐
用Python展示动态规则法用以解决重叠子问题的示例
Apr 02 Python
Python读大数据txt
Mar 28 Python
Python数据分析中Groupby用法之通过字典或Series进行分组的实例
Dec 08 Python
Python排序搜索基本算法之插入排序实例分析
Dec 11 Python
python tornado微信开发入门代码
Aug 24 Python
python入门:这篇文章带你直接学会python
Sep 14 Python
JSON文件及Python对JSON文件的读写操作
Oct 07 Python
python去掉 unicode 字符串前面的u方法
Oct 21 Python
python+pyqt5实现KFC点餐收银系统
Jan 24 Python
django echarts饼图数据动态加载的实例
Aug 12 Python
在Python3 numpy中mean和average的区别详解
Aug 24 Python
Django数据模型中on_delete使用详解
Nov 30 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
php新建文件自动编号的思路与实现
2011/06/27 PHP
php 对输入信息的进行安全过滤的函数代码
2012/06/29 PHP
表格展示无限级分类(PHP版)
2012/08/21 PHP
合格的PHP程序员必备技能
2015/11/13 PHP
php cookie工作原理与实例详解
2016/07/18 PHP
JS返回上一页实例代码通过图片和按钮分别实现
2013/08/16 Javascript
Javascript 命名空间模式
2013/11/01 Javascript
探讨JavaScript中的Rest参数和参数默认值
2015/07/29 Javascript
JavaScript前端开发之实现二进制读写操作
2015/11/04 Javascript
利用JS生成博文目录及CSS定制博客
2016/02/10 Javascript
完美解决jQuery 鼠标快速滑过后,会执行多次滑出的问题
2016/12/08 Javascript
JavaScript之class继承_动力节点Java学院整理
2017/07/03 Javascript
Windows下快速搭建NodeJS本地服务器的步骤
2017/08/09 NodeJs
Vue实现固定定位图标滑动隐藏效果
2019/05/30 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
NodeJS http模块用法示例【创建web服务器/客户端】
2019/11/05 NodeJs
微信小程序 wx:for 与 wx:for-items 与 wx:key的正确用法
2020/05/19 Javascript
Python实现把回车符\r\n转换成\n
2015/04/23 Python
Python使用matplotlib绘制动画的方法
2015/05/20 Python
Python实现读取TXT文件数据并存进内置数据库SQLite3的方法
2017/08/08 Python
Django中redis的使用方法(包括安装、配置、启动)
2018/02/21 Python
Python线程下使用锁的技巧分享
2018/09/13 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
python:删除离群值操作(每一行为一类数据)
2020/06/08 Python
人事专员的职责
2014/02/26 职场文书
迎国庆演讲稿
2014/09/15 职场文书
四风自我剖析材料思想汇报
2014/10/01 职场文书
抄袭同学作业检讨书1000字
2014/11/20 职场文书
学雷锋日活动总结
2015/02/06 职场文书
工作岗位职责范本
2015/02/15 职场文书
2015年医院护理部工作总结
2015/04/23 职场文书
业务员年终工作总结2015
2015/05/28 职场文书
统招统分证明
2015/06/23 职场文书
运动会闭幕式致辞
2015/07/29 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB