没有合适的资源?快使用搜索试试~ 我知道了~
Python 中的内置异常
资源推荐
资源详情
资源评论
Python 中的内置异常
Python 中的所有实例都必须是派生自 BaseException 的类的实例。不通过
子类化相关的两个异常类永远不会等效,即使它们具有相同的名称。内置异
常可以由解释器或内置函数生成。
Python 中有几个内置异常,当发生错误时会引发这些异常。可以使用 local()
内置函数查看这些内置异常,如下所示:
>>> locals()['__builtins__']
这将返回内置异常、函数和属性的字典。
基类
以下异常主要用作其他异常的基类。
1. 异常 BaseException
这是所有内置异常的基类。它并不意味着由用户定义的类直接继承。对
于用户定义的类,使用 Exception。此类负责使用传递的参数使用 str()
创建异常的字符串表示形式。如果没有参数,则返回空字符串。
� args : args 是提供给异常构造函数的参数元组。
� with_traceback(tb) :该方法通常用于异常处理。此方法将 tb
设置为异常的新回溯并返回异常对象。
代码 :
�
尝试:
...
除了一些异常:
tb = sys.exc_info()[2]
引发 OtherException(...).with_traceback(tb)
�
2. 异常 Exception
这是所有内置非系统退出异常的基类。所有用户定义的异常也应该从此
类派生。
3. 异常 ArithmeticError
此类是因各种算术错误引发的内置异常的基类,例如:
� 溢出错误
� 零除法错误
� 浮点错误
例子 :
try:
a = 10/0
print (a)
except ArithmeticError:
print ("This statement is raising an arithmetic exception.")
else:
print ("Success.")
输出 :
该语句引发算术异常。
4. 异常 BufferError
当无法执行缓冲区相关操作时会引发此异常。
5. 异常 LookupError
这是当映射或序列上使用的键或索引无效或未找到时引发的异常的基类。
提出的例外情况是:
� 按键错误
� 索引错误
例子 :
try:
a = [1, 2, 3]
print (a[3])
except LookupError:
print ("Index out of bound error.")
else:
print ("Success")
输出 :
索引越界错误。
具体例外情况
以下异常是通常引发的异常。
1. 异常 AssertionError
当断言语句失败时,会引发 AssertionError。
例子 :
2.
断言 False,'断言失败'
3.
输出 :
4.
回溯(最近一次调用最后一次):
文件“exceptions_AssertionError.py”,第 12 行,位于
断言 False,'断言失败'
AssertionError:断言失败
5.
6. 异常 AttributeError
当属性引用或赋值失败时(例如引用不存在的属性时),将引发
AttributeError。
例子 :
7.
8.
9.
10.
class Attributes(object):
pass
object = Attributes()
print (object.attribute)
11.
输出 :
12.
回溯(最近一次调用最后一次):
文件“d912bae549a2b42953bc62da114ae7a7.py”,第 5 行,位于
打印对象.属性
AttributeError:“属性”对象没有属性“属性”
13.
14. 异常 EOFError
当 input() 等内置函数在未读取任何数据的情况下遇到文件结束条件
(EOF) 时,会引发 EOFError。像 readline() 这样的文件方法在到达 EOF
时返回一个空字符串。
例子 :
15.
16.
17.
剩余19页未读,继续阅读
资源评论
Qshen
- 粉丝: 1631
- 资源: 419
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功