码迷,mamicode.com
首页 > 其他好文 > 详细

抛出异常

时间:2017-12-25 11:44:02      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:实例   syn   gpo   work   程序   结果   使用   this   odi   

#Python使用raise语句抛出一个指定异常。我们可以使用类(exception的子类)或实例参数调用raise语句引发异常。使用类时程序会自动创建实例。
#例如:
 1 >>> raise Exception
 2 Traceback (most recent call last):
 3   File "<pyshell#0>", line 1, in <module>
 4     raise Exception
 5 Exception
 6 >>> raise NameError(This is NameError)
 7 Traceback (most recent call last):
 8   File "<pyshell#1>", line 1, in <module>
 9     raise NameError(This is NameError)
10 NameError: This is NameError
#由操作结果看到,第一个示例raise Exception引发了一个没有相关错误信息的普通异常,第二个示例输出了一些错误提示。
#如果只想知道是否抛出了异常,并不想处理,使用一个简单的raise语句就可以再次把异常抛出,例如:
1 #!/usr/bin/python3
2 #-*-coding:UTF-8-*-
3 #异常
4 
5 try:
6     raise NameError(This is NameError)
7 except NameError:
8     print(An exception happend!) #后面不加raise
#程序执行结果如下:
1 D:\Pythonworkspace>python 异常.py
2 An exception happend!
#再例如:
1 #!/usr/bin/python3
2 #-*-coding:UTF-8-*-
3 #异常
4 
5 try:
6     raise NameError(This is NameError)
7 except NameError:
8     print(An exception happend!)
9     raise #最好加一个raise
#执行结果如下:
1 D:\Pythonworkspace>python 异常.py
2 An exception happend!
3 Traceback (most recent call last):
4   File "异常.py", line 6, in <module>
5     raise NameError(This is NameError)
6 NameError: This is NameError
#由操作结果看到,使用raise可以输出更深层次的异常。在使用过程中,可以借助该方法得到更详细的异常信息
#前面碰到的NameError、SyntaxError、TypeError、ValueError等异常类称为内建异常类。在Python中,内建的异常类有很多,可以使用dir函数列出异常类的内容,并用在raise语句中,用法如raise NameError这般。
#这表为一些重要的内建异常类
技术分享图片

 

抛出异常

标签:实例   syn   gpo   work   程序   结果   使用   this   odi   

原文地址:http://www.cnblogs.com/DLHe/p/8107968.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!