当前位置:   article > 正文

python异常-- try-catch-else-finally 异常-- raise_python try catch raise

python try catch raise

1、捕获异常-- try-catch-else-finally:

  1. try:
  2. 存在潜在的异常code放在try中,进行捕获。
  3. except Exception,err:
  4. 捕捉异常名称和参数,并抛出异常处理信息。
  5. else:
  6. 如果没有异常则执行else
  7. finally:
  8. 退出try语句后总会执行的code。

2、自己触发异常 raise

raise语法格式如下:

raise [Exception [, args [, traceback]]]

语句中 Exception 是异常的类型,args 是自已提供的异常参数,traceback参数是可选的,如果选择,是跟踪异常对象。

  1. def mytest(s):
  2. try:
  3. if s is None:
  4. print("s 是空对象")
  5. # 如果引发NameError异常,后面的代码将不能执行
  6. raise NameError
  7. print(len(s))
  8. except TypeError:
  9. print("空对象没有长度")
  10. if __name__ == '__main__':
  11. s = None
  12. result = mytest(s)
  13. print(result)
 运行结果:
  1. D:\Pytest_Demo\Scripts\python.exe D:/pycharmworkspace/Pytest_Demo/Demo/raise.py
  2. Traceback (most recent call last):
  3. s 是空对象
  4.   File "D:/pycharmworkspace/Pytest_Demo/Demo/raise.py", line 14, in <module>
  5.     result = mytest(s)
  6.   File "D:/pycharmworkspace/Pytest_Demo/Demo/raise.py", line 6, in mytest
  7.     raise NameError
  8. NameError
  9. Process finished with exit code 1

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/205095
推荐阅读
相关标签
  

闽ICP备14008679号