与python异常相关的关键字1
2
3
4
5
6
7raise:手动抛出/引发异常:raise [exception[,data]]
try/except:捕获异常并处理
pass:忽略异常
as:定义异常实例(except IOError as e)
finally:无论是否出现异常,都执行的代码
else:如果try中的语句没有引发异常,则执行else中的语句
except Exception as error:
python中的异常类型1
2
3
4StandardError类:如果程序上出现逻辑错误, 将引发该异常。StandardError类是所有内敛异常的基类,放置在默认的命名空间中,因此使用IOEroor, EOFError, ImportError等类,不需要导入exception模块。
StopIteration类:判断循环是否执行到尾部,如果循环到尾部,则抛出该异常。
GeneratorExit类:是由Generator函数引发的异常,当调用close()时引发该异常。
Warning类:表示程序中的代码引起的警告。
try … expect1
2
3
4
5try:
block
except [exception1(,exception2...),[data…]]:
block
(else: block)
例1:
1 | try: |
例2:
1 | try: |
try … finally1
2
3finally 里面只是执行完成try中的代码后,必须执行的代码, 即使是 try中有异常抛出,也是会去执行finally
所以,一般情况下,finally里面执行的都是一些清理工作,比如:关闭文件描述符,释放锁等
注意,finally中,如果出现异常,外部如果没有相应的捕获机制,该异常会层层抛出,直到最顶端,然后解释器停止。一般在外层再加一次try except异常捕获
---本文结束感谢您的阅读。微信扫描二维码,关注我的公众号---
本文链接: https://www.yp14.cn/2016/07/06/Python异常处理/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!