一篇文章带你弄懂Python异常简介和案例分析.docxVIP

一篇文章带你弄懂Python异常简介和案例分析.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一篇文章带你弄懂Python特别简介和案例分析 一、特别简介 当Python检测到一个错误时,解释器就无法连续执行了,反而消灭了一些错误的提示,这就是所谓的特别。 二、案例分析 ? 打开一个不存在的文件123.txt,当找不到123.txt 文件时,就会抛出给我们一个IOError类型的错误,No such file or directory:123.txt (没有123.txt这样的文件或名目)。 print-----test--1--- open(123.txt,r) print -----test--2--- 运转结果: 1捕获特别 try...except... 例: try: print(-----test--1---) open(123.txt,r) print(-----test--2---) except IOError: pass 运转结果: 说 明 : 此程序看不到任何错误,由于用except 捕获到了IOError特别,并添加了处理的方法。 pass 表示实现了相应的实现,但什么也不做;假如把pass改为print语句,那么就会输出其他信息。 小总结 : 把可能消灭问题的代码,放在try中。 把处理特别的代码,放在except中。 2 except捕获多个特别 例 : try: print(num) except IOError: print(产生错误了) 运转结果 : 想一想: 上例程序,已经使用except来捕获特别了,为什么还会看到错误的信息提示? 答: except捕获的错误类型是IOError,而此时程序产生的特别为 NameError ,所以except没有生效。 修改后的代码为 : try: print(num) except NameError: print(产生错误了) 运转结果 实际开发中,捕获多个特别的方式,如下: #coding=utf-8 try: print(-----test--1---) open(123.txt,r) # 假如123.txt文件不存在,那么会产生 IOError 特别 print(-----test--2---) print(num)# 假如num变量没有定义,那么会产生 NameError 特别 except (IOError,NameError): #假如想通过一次except捕获到多个特别可以用一个元组的方式 留意: 当捕获多个特别时,可以把要捕获的特别的名字,放到except 后,并使用元组的方式仅进行存储。 3猎取特别的信息描述 try: open(a.txt) except(NameError,IOError) as result: print(捕抓到特别) print(信息呈现:,result) 运转结果: 4捕获全部特别 try: open(a.txt) except Exception as result: print(捕抓到特别) print(信息呈现:,result) 运转结果: 5 else 我们应当对else并不生疏,在if中,它的作用是当条件不满足时执行的实行;同样在try...except...中也是如此,即假如没有捕获到特别,那么就执行else中的事情。 try: num = 100 print(num) except NameError as errorMsg: print(产生错误了:%s % errorMsg) else: print(没有捕获到特别,真兴奋) 运转结果如下: 6 try...finally... ? try...finally...语句用来表达这样的情况: 在程序中,假如一个段代码必需要执行,即无论特别能否产生都要执行,那么此时就需要使用finally。比如文件关闭,释放锁,把数据库连接返还给连接池等。 demo: import time try: f = open(test.txt) try: while True: content = f.readline() if len(content) == 0: break time.sleep(2) print(content) except: #假如在读取文件的过程中,产生了特别,那么就会捕获到 #比如 按下了 ctrl+c pass final

文档评论(0)

bob157641554 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档