位置: 编程技术 - 正文

浅谈Python的异常处理(python 异常处理方法)

编辑:rootadmin

推荐整理分享浅谈Python的异常处理(python 异常处理方法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python异常处理的方法,python的异常处理,python异常处理有何作用,python异常处理过程可以概括为三个步骤,python异常处理过程可以概括为三个步骤,python的异常类型及处理,python 异常处理方法,python的异常类型及处理,内容如对您有帮助,希望把文章链接给更多的朋友!

Python的异常处理能力是很强大的,可向用户准确反馈出错信息。在Python中,异常也是对象,可对它进行操作。所有异常都是基类Exception的成员。所有异常都从基类Exception继承,而且都在exceptions模块中定义。Python自动将所有异常名称放在内建命名空间中,所以程序不必导入exceptions模块即可使用异常。Python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行。

注意:虽然大多数错误会导致异常,但一个异常不一定代表错误,有时候它们只是一个警告,有时候它们可能是一个终止信号,比如退出循环等。

一.与python异常相关的关键字

raise:手动抛出/引发异常:raise [exception[,data]try/except:捕获异常并处理pass:忽略异常as:定义异常实例(except IOError as e)finally:无论是否出现异常,都执行的代码]else:如果try中的语句没有引发异常,则执行else中的语句except Exception as error:

二.python中的异常类型

1.StandardError类:如果程序上出现逻辑错误, 将引发该异常。StandardError类是所有内敛异常的基类,放置在默认的命名空间中,因此使用IOEroor, EOFError, ImportError等类,不需要导入exception模块。

StopIteration类:判断循环是否执行到尾部,如果循环到尾部,则抛出该异常。GeneratorExit类:是由Generator函数引发的异常,当调用close()时引发该异常。Warning类:表示程序中的代码引起的警告。

三.基本方式:

1.try:

语句1

except [exception1(,exception2...),[data…]]:

语句2

else:

语句3

该种异常处理语法的规则是:

· 执行try下的语句,如果引发异常,则执行过程会跳到第一个except语句。

· 如果第一个except中定义的异常与引发的异常匹配,则执行该except中的语句。

浅谈Python的异常处理(python 异常处理方法)

· 如果引发的异常不匹配第一个except,则会搜索第二个except,允许编写的except数量没有限制。

· 如果所有的except都不匹配,则异常会传递到下一个调用本代码的最高层try代码中。

· 如果没有发生异常,则执行else块代码。

最后两个的输出是一模一样的---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

2.try:

语句1

finally:

语句2

该语句的执行规则是:

· 执行try下的代码。

· 如果发生异常,在该异常传递到下一级try时,执行finally中的代码。

· 如果没有发生异常,则执行finally中的代码。

第二种try语法在无论有没有发生异常都要执行代码的情况下是很有用的。例如我们在python中打开一个文件进行读写操作,我在操作过程中不管是否出现异常,最终都是要把该文件关闭的。这两种形式相互冲突,使用了一种就不允许使用另一种,而功能又各异

所以,一般情况下,finally里面执行的都是一些清理工作,比如:关闭文件描述符,释放锁等

注意,finally中,如果出现异常,外部如果没有相应的捕获机制,该异常会层层抛出,直到最顶端,然后解释器停止。一般在外层再加一次try except异常捕获

三.手动使用raise引发异常

1.raise [exception[,data]]

2.在Python中,要想引发异常,最简单的形式就是输入关键字raise,后跟要引发的异常的名称。异常名称标识出具体的类:Python异常是那些类的对象。执行raise语句时,Python会创建指定的异常类的一个对象。raise语句还可指定对异常对象进行初始化的参数。为此,请在异常类的名称后添加一个逗号以及指定的参数(或者由参数构成的一个元组)。

3.实例:

python3 与python2 异常处理的区别与联系 在python2.x中,异常是这样的处理的,异常基类后面加一个逗号,然后跟着异常类型importtracebacktry:1/0exceptException,err:printerr在python3.x中,异常是这样处理的

浅谈python抛出异常、自定义异常, 传递异常 一.抛出异常Python用异常对象(exceptionobject)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一

python3.5使用tkinter制作记事本 tkinter是Python下面向tk的图形界面接口库,可以方便地进行图形界面设计和交互操作编程。tkinter的优点是简单易用、与Python的结合度好。tkinter在Python3.x下

标签: python 异常处理方法

本文链接地址:https://www.jiuchutong.com/biancheng/387689.html 转载请保留说明!

上一篇:qpython3 读取安卓lastpass Cookies(qpython pydroid)

下一篇:浅谈python抛出异常、自定义异常, 传递异常(python中如何抛出异常)

  • 不缴或少缴应纳税款的处罚措施
  • 个人获得的专利有哪些
  • 收取境外服务费收入如何开票
  • 增值税的计税依据是什么
  • 进项税和销项税怎么理解
  • 包装运杂费结转生产成本会计分录
  • 退税流程怎么操作APP
  • 抄报税校验失败调用系统服务出错怎么办
  • 公转私可以实时到账吗
  • 叉车折旧年限是多少年
  • 贸易类公司做产品代理账务如何处理
  • 隔月发票可以作废吗?
  • 上个月没有结账可以做下个月的账吗
  • 行政单位财务长期挂账处理办法
  • 公司买的设备
  • 双软企业资质
  • 税负率是税率吗
  • 过路费是地税还是国税
  • 企业少报收入
  • 土地配套费如何缴纳
  • 个体工商户税收优惠政策2023年最新
  • 工程检测费入什么科目
  • 企业所得税免税收入和不征税收入
  • 一般和小规模纳税人哪个免税
  • 软件企业的税收优惠政策
  • 运费允许抵扣的税额分录
  • 会计调账有哪些方式
  • 违约金收税吗
  • 公司邀请外国人来华邀请函模板
  • 企业所缴税款能抵税吗
  • pos机刷卡手续费谁承担
  • 自制原始凭证需要复核
  • 公司给员工的餐补有没有个税
  • 真实有效的18岁身份证
  • vue上传文件和后端upload
  • 监事 兼职
  • 免抵退税额好难懂
  • 注意力机制详解
  • 期间费用计入产品成本的费用吗
  • 【深度学习】目标检测的性能评价指标,mAP_0.5,mAP_0.5,0.95,0.05
  • 英雄联盟轮转模式2020时间表
  • get请求有哪些
  • 公司的银行账号是不是和个人账号不一样
  • 现代服务业加计抵减最新政策2022
  • 发票上多盖了一个发票章
  • 个人所得税大病医疗是什么意思
  • sqlcode错误码100
  • 有限公司也可以向股东核发股票
  • 发票商品分类
  • 会影响当期损益的科目有
  • 采购流程内容
  • 帐外资金
  • 计提消费税的会计分录讲解
  • 不动产租赁服务包括哪些
  • 个体工商户的免税证明
  • 以前年度买的固定资产一直未入账,现在还能入账吗?
  • 残保金逾期申报了补报会有罚款和滞纳金吗?
  • 开发成本存货怎么算
  • 银行存款利息应计入
  • 代扣个税返还需要交增值税吗
  • 研发加计扣除抵减税额怎么算
  • 费用报销单人民币符号
  • 农民工工资专户销户流程
  • 财务软件可以直接做管理费用吗?
  • 职工福利费扣除税率
  • sql union和join区别
  • windows隐藏文件名
  • win7如何开启飞行模式
  • 如何将win10系统从c盘迁移到d盘
  • linux发布项目
  • 解决的英文
  • win8关闭uac
  • unity-3d
  • 一个android项目一般包含哪些目录?各有什么用途?
  • dos判断变量是否为空
  • 安卓初始化
  • 经常用到的图像格式有
  • jquery添加属性的方法
  • 电子税务局怎么添加银行账户信息
  • 季度申报表如何填写
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设