本文主要是介绍python异常-- try-catch-else-finally 异常-- raise,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、捕获异常-- try-catch-else-finally:
try:存在潜在的异常code放在try中,进行捕获。
except Exception,err:捕捉异常名称和参数,并抛出异常处理信息。
else:如果没有异常则执行else。
finally:退出try语句后总会执行的code。
2、自己触发异常 raise
raise语法格式如下:
raise [Exception [, args [, traceback]]]
语句中 Exception 是异常的类型,args 是自已提供的异常参数,traceback参数是可选的,如果选择,是跟踪异常对象。
def mytest(s):try:if s is None:print("s 是空对象")# 如果引发NameError异常,后面的代码将不能执行raise NameErrorprint(len(s))except TypeError:print("空对象没有长度")if __name__ == '__main__':s = Noneresult = mytest(s)print(result)
运行结果:
D:\Pytest_Demo\Scripts\python.exe D:/pycharmworkspace/Pytest_Demo/Demo/raise.py Traceback (most recent call last): s 是空对象File "D:/pycharmworkspace/Pytest_Demo/Demo/raise.py", line 14, in <module>result = mytest(s)File "D:/pycharmworkspace/Pytest_Demo/Demo/raise.py", line 6, in mytestraise NameError NameErrorProcess finished with exit code 1
这篇关于python异常-- try-catch-else-finally 异常-- raise的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!