Python 如何解释Python中的异常是一个对象?
是的,在给定的代码中,“err”是异常对象。
在Python中,所有东西都是对象。每个对象都有属性和方法。所以异常(如列表、函数、元组等)也是对象。因此,异常也像其他对象一样具有属性。这些属性可以设置和访问,如下所示。有一个基类exception,几乎所有其他异常都是其子类。如果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>)
阅读更多:Python 教程
极客教程