python异常之raise语句

1 python异常之raise语句

python通过raise语句显式触发异常,raise后面跟类名或实例名。

1.1 基本用法

用法

raise <类名>
raise <实例名>
raise

描述

(1) raise <类名>,则python自动调用类的不带参数的构造函数,来触发异常;

(2) raise <实例名>,触发指定实例名的异常;

(3) raise ,重新触发当前异常,通常用于异常处理器中,传递已经捕获的异常;

示例

>>> try:raise TypeError
except TypeError:print('raise重新引发当前异常')raiseraise重新引发当前异常
Traceback (most recent call last):File "<pyshell#10>", line 2, in <module>raise TypeError
TypeError

1.2 raise from

raise from 用于描述当前异常与except捕获异常的关系。

用法

raise [异常[('异常说明')]]
raise 异常 from 变量
raise 异常 from None

描述

在except分句编写raise时,用于向外传递异常,如果不接参数,则传递except捕获的异常,如果接参数,则传递最新的异常,并且说明与except捕获的异常的关系。

(1) raise [异常[(‘异常说明’)]]:表示raise的异常与except捕获的异常没有直接关系;

(2) raise 异常 from 变量:表示raise的异常由except捕获的异常导致;

(3) raise 异常 from None:不打印except捕获的异常;

1.2.1 raise

描述

raise [异常[(‘异常说明’)]]:表示raise的异常与except捕获的异常没有直接关系;

示例

>>> def testraise(s,i):try:print(s[i])except IndexError:raise ValueError('i输入错误')>>> testraise('梯阅线条',5)
Traceback (most recent call last):File "<pyshell#17>", line 3, in testraiseprint(s[i])
IndexError: string index out of range
# raise [异常[('异常说明')]] , 捕获except的异常时,触发了另一个异常:raise的异常,两者无直接关系
During handling of the above exception, another exception occurred:Traceback (most recent call last):File "<pyshell#18>", line 1, in <module>testraise('梯阅线条',5)File "<pyshell#17>", line 5, in testraiseraise ValueError('i输入错误')
ValueError: i输入错误

1.2.2 raise from

描述

raise 异常 from 变量:表示raise的异常由except捕获的异常导致;

示例

>>> def testraise(s,i):try:print(s[i])except IndexError as ie:raise ValueError('i输入错误') from ie>>> testraise('梯阅线条',5)
Traceback (most recent call last):File "<pyshell#23>", line 3, in testraiseprint(s[i])
IndexError: string index out of range# raise 异常 from except的异常 , 是由except异常直接引发的
The above exception was the direct cause of the following exception:Traceback (most recent call last):File "<pyshell#24>", line 1, in <module>testraise('梯阅线条',5)File "<pyshell#23>", line 5, in testraiseraise ValueError('i输入错误') from ie
ValueError: i输入错误

1.2.3 raise from None

描述

raise 异常 from None:不打印except捕获的异常;

示例

>>> def testraise(s,i):try:print(s[i])except IndexError as ie:# None 不打印 except的异常raise ValueError('i输入错误') from None>>> testraise('梯阅线条',5)
Traceback (most recent call last):File "<pyshell#27>", line 1, in <module>testraise('梯阅线条',5)File "<pyshell#26>", line 5, in testraiseraise ValueError('i输入错误') from None
ValueError: i输入错误

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/487054.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AIoT成功的关键要素

来源&#xff1a;中国工业和信息化本文发表于《中国工业和信息化》杂志2020年8月刊总第26期随着科技的不断发展&#xff0c;一些在功能上具有相互补充作用的技术正在不可避免地发生结合——例如&#xff0c;人工智能&#xff08;AI&#xff09;和物联网&#xff08;IoT&#xf…

C++实现线性表的顺序表

SeqList.h #pragma once #include <iostream> using namespace std; const int MaxSize 100; template <class DataType> class SeqList { public:SeqList();//建立空的顺序表 SeqList(DataType a[], int n);//建立长度为n的顺序表~SeqList();//析构函数int Leng…

Oracle数据库(三)

专题一&#xff1a;oracle查询 1.where查询 查询部门编号是1的部门信息select *from emp where deptno1; 查询姓名是kw的员工&#xff0c;字符串使用‘’&#xff0c;内容大小写敏感select *from emp where namekw 查询2018年1月4日入职的员工&#xff0c;注意oracle默认日期格…

中富之命能有多少钱_邯郸白铁风管工每天工资多少钱?白铁风管价格多少钱你能接受?...

邯郸白铁风管工每天工资多少钱&#xff1f;白铁风管价格多少钱你能接受&#xff1f;身为买家&#xff0c;认为白铁风管价格越低越好&#xff0c;身为厂家&#xff0c;希望在市场价格合理的情况下获得更高的利润。白铁风管工人一天的工资也是一样。以下小编就来说一下白铁风管的…

人工智能的尽头是人工?

来源&#xff1a;CAA混合智能专委会上个月出门&#xff0c;发现十字路口的交警和辅警人数明显增加了。我不禁有些诧异&#xff0c;近十年来&#xff0c;人工智能最成功和最有效的落地成果不就是安防和交通相关应用吗&#xff0c;而十字路口往往都是视频监控最密集的地方&#x…

3种团队分组适应项目_业务团队怎样做目标管理?更能激励员工?(附实操方法)...

导语&#xff1a;目标管理是业务团队的核心&#xff0c;好的目标管理激励员工&#xff0c;差的目标管理形同虚设&#xff01;很多公司有这样的现象&#xff1a;每次给业务团队订目标的时候&#xff0c;总是需要经过一番讨价还价之后&#xff0c;才能最终确定&#xff0c;然而结…

AI处理器热潮正在消退

来源&#xff1a;technews(台) 作者&#xff1a;痴汉水球俗语说得好&#xff1a;海水退潮之后&#xff0c;才知道谁没穿裤子。但历史的教训往往证明残酷的事实&#xff1a;结果站在浪里的所有人&#xff0c;全部都没有穿裤子。处理器业界的年度盛事第32届IEEE HotChips&#x…

Visual Studio 2015 自动生成 的大文件xxx.vc.db的删除问题

用vs2015创建Visual C项目&#xff0c;编写生成后&#xff0c;每次都会生成一个project_name.VC.db文件&#xff0c;而且会随着你工程修改运行变的越来越大。 project_name.VC.db是sqlite后端用于intellisense的新数据库&#xff0c;相当于之前的*.sdf SQL Server Compact数据库…

gtj2018如何生成工程量报表_土建软件GTJ2018中的十个问题及解决方法

问题1柱汇总计算报错提示&#xff1a;直筋长度的计算结果小于0&#xff1f;方法一&#xff1a;调整为【纵筋销固】就可以计算出来钢筋量。但是设置插筋和纵筋锚固计算出来是有量差的&#xff0c;可以在编辑钢筋中把手算的长度手动添加下或者是在单构件输入界面去手动添加下。方…

重磅|我国科学家成功研制全球神经元规模最大的类脑计算机

来源&#xff1a;浙江大学9月1日&#xff0c;亿级神经元类脑计算机重大成果新闻发布会在杭州召开。浙江大学校长吴朝晖院士出席并讲话。他表示&#xff0c;人工智能浪潮正加快智能增强时代的到来&#xff0c;类脑计算机将成为未来计算的主要形态和重要平台&#xff0c;将在模拟…

java 毫秒转分钟和秒_PDF如何转换CAD文件?教你一分钟批量转上百文件方法,看完秒懂!...

如今科技这么发达&#xff0c;很多人在工作中都会遇到形形色色的各类文件。而同时也因为工作需求碰到文件格式转换难题&#xff0c;如&#xff1a;PDF如何快速转换成CAD文件&#xff1f;今天小编就教大家一个方法&#xff0c;让你轻松一秒完成百个PDF文件转CAD。具体操作方法&a…

STM32F103C8文档

STM32F103C8学习 1.新建工程 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w8ejH9ix-1670863229262)(C:\Users\puheliang\AppData\Roaming\Typora\typora-user-images\image-20221021022650914.png)] APB2和APB1外设 STM32参考手册搜索“系统架…

数据库设计-规范化规则

SQL反模式一书在附录章节给出了设计关系数据库的规范化规则&#xff0c;一个简明的规范化规则清单。 关系是什么 在规范化之前&#xff0c;我们先要理解下关系。 数学中关系定义&#xff1a;两个不同数据域上的值的集合&#xff0c;通过一个条件得到的一个所有可能组合的子集。…

AI 如果 “智力爆炸” ,只有普通智力的人类是蝼蚁还是宠物?

编译&#xff5c;吴婷婷编审&#xff5c;王新凯出品&#xff5c;学术头条想象一下&#xff0c;当你推倒多米诺骨牌时&#xff0c;第一张牌倒下&#xff0c;而后每一块牌迅速产生反应&#xff0c;直至最后一块牌。实际上&#xff0c;这种连锁反应不局限于物理界&#xff0c;而是…

央视曝光紫砂锅名单_大家看今天中午《每周质量报告》没,美的牌 紫砂锅含有剧毒。家里有这牌子...

吞我帖子紫砂黑幕》紫砂煲日渐热销 “健康锅”表里不一近几年&#xff0c;紫砂煲成了炊具市场上的明星产品&#xff0c;销量也是连年上升&#xff0c;而消费者选择紫砂煲看中的无外乎就是商家所宣称的健康、营养、养生等等概念&#xff0c;说白了就是使用这种紫砂煲做饭做菜对人…

Java容器---Set: HashSet TreeSet LinkedHashSet

1.Set接口概述 Set 不保存重复的元素&#xff08;如何判断元素相同呢&#xff1f;&#xff09;。如果你试图将相同对象的多个实例添加到Set中&#xff0c;那么它就会阻止这种重复现象。 Set中最常被使用的是测试归属性&#xff0c;你可以很容易地询问某个对象是否在某个Set中。…

马斯克脑机接口遭质疑:不是新技术,没体现神经解码进展

来源&#xff1a;AI前线作者 | 李冬梅马斯克的脑机接口实验&#xff0c;一经发布&#xff0c;就引来了诸多关注&#xff0c;业内专家们对此实验的评价却褒贬不一。北京时间 8 月 29 日&#xff0c;Neuralink 公司发布的神秘技术终于揭开了它的面纱&#xff0c;在视频直播中&am…

坯子库和suapp哪个好用_「双全科技」进销存软件哪个简单好用,管家婆进销存软件教程...

进销存软件哪个简单好用&#xff0c;管家婆进销存软件教程随着国家信息化的发展越来越趋于成熟&#xff0c;越来越多的企业需要进销存软件来提高工作效率&#xff0c;企业家们不再采用传统的库存管理模式&#xff0c;进销存管理系统解决了企业日常经营中一系列库存问题&#xf…

吴恩达推荐笔记:22 张图总结深度学习全部知识

来源&#xff5c;Sophia知乎https://zhuanlan.zhihu.com/p/152362317编辑 | 公众号极市平台本文仅用于学术分享&#xff0c;如有侵权&#xff0c;联系后台作删文处理最近在做笔记查阅内容&#xff0c;觉得这个总结太美观了&#xff0c;真是棒&#xff01;吴恩达在推特上展示了一…

使用nfs映射远程服务器磁盘目录

参考&#xff1a;http://www.centoscn.com/CentosSecurity/SoftSecurity/2015/0408/5118.htmlhttp://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html说明&#xff1a; 本文是在MacOS上做客户端&#xff0c;因为MacOS内核是类Unix&#xff0c;所以本文也适用于Linux客…