您将如何解释异常在 Python 中是一个对象?
在给定的代码中“err”是异常对象。
在 python 中,一切都是对象。每个对象都有属性和方法。因此,异常与列表、函数、元组等类似,也是对象。因此,异常也像其他对象一样具有属性。这些属性可以按如下方式设置和访问。有基本类异常,几乎所有其他异常都是其子类。如果 e 是一个异常对象,那么 e.args 和 e.message 即是它的属性。
在当前的 Python 实现中,异常由三部分组成:类型、值和回溯。sys 模块在 exc_type、exc_value 和 exc_traceback 三个变量中描述了当前的异常对象。
sys.exc_info() 函数返回这三个属性的元组,raise 语句采用三参数形式接受这三个部分。
给定代码给出以下输出
(<type 'exceptions.ValueError'>, ValueError('could not convert string to int: Godzilla!',), <traceback object at 0x0000000002E33748>)
广告