python捕捉全部异常_python异常捕捉以及处理
看标题觉得高大上,好像能处理所有的异常。但是,事实是只能按照字面的意思来理解这一段话。
众所周知写代码哪有不出bug的?
那么出现了bug 我们不想让程序因为bug的存在而退出。那么要怎么做呢?
今天来写一下这个。
【python捕捉全部异常_python异常捕捉以及处理】try:
代码
except exception:
代码
注意:except exception会捕捉所有的异常,简称:万能异常。而我所知道的异常有: 索引异常 变量名字异常 迭代异常 无法调用异常 。。。。。等等有很多异常
但是一旦使用万能异常就会包庇所有的其它异常。正常的使用方式是应该把万能异常写在捕捉异常的最下方。except 去捕捉你知道或者预料要出现的异常。这样写的好处是方便你改bug
我们的异常处理应该是小段小段的使用,方便代码的调试。
except exception as a:print(a)可以打印出异常的类型
文章图片
为了偷懒,so我就没有打代码,直接粘贴过来图片了,捕捉异常之后可以使用else:else的作用是假如这个程序没有报错执行else内的代码。
举例:我们发送邮件的时候会存在发送的邮箱号码不能使用,或者网络错误无法发送。我们不知道是否这个邮件发送出去了。那么else就可以用在捕捉异常之后,意思是代码没有发生异常使用else内的代码!
文章图片
finally 的作用比较神奇,不管是代码无异常运行还是异常运行都会运行到finally内 ,那么它的作用比较神奇。它在函数内部使用,即使return 也会运行finally内的代码。
粘贴一发老师写的总结:
# 程序一旦发生错误,就从错误的位置停下来了,不在继续执行后面的内容
# 使用try和except就能处理异常
#try是我们需要处理的代码
#except 后面跟一个错误类型 当代码发生错误且错误类型符合的时候 就会执行except中的代码
#except支持多分支
#有没有一个能处理所有错误的类型 : Exception
# 有了万能的处理机制仍然需要把能预测到的问题单独处理
# 单独处理的所有内容都应该写在万能异常之前
# else : 没有异常的时候执行else中的代码
# finally : 不管代码是否异常,都会执行
# finally和return相遇的时候 依然会执行
# 函数里做异常处理用,不管是否异常去做一些收尾工作
推荐阅读
- python捕获异常后处理_python异常捕获处理
- python|python 异常之捕获、处理
- python异常捕获排除指定类型异常_Python异常捕获与处理及自定义异常
- python捕获异常并提示_python 异常捕捉并处理
- 中文word2vec的python实现_基于Word2Vec的相似度计算(python)-Go语言中文社区
- word2vec|word2vec python实现_用python实现gensim的word2vec模型计算句子相似度
- python根据词向量计算相似度_如何使用gensim的word2vec模型和python计算句子相似度...
- python|python opencv库_Python如何安装opencv库
- python灰度图片格式_[Python图像处理] 十五.图像的灰度线性变换
- python调用opencv例子_Opencv调用深度学习模型