繁体   English   中英

Python中的回溯对象的类型是什么?

[英]What is the type of traceback objects in Python?

import sys

try:
    raise Exception('foobar')
except:
    info = sys.exc_info()

print(type(e[2])) # <class 'traceback'>
help(traceback) # NameError: name 'traceback' is not defined

Python用于异常报告的回溯对象的类型究竟是什么?

sys.exc_info上的文档提到了参考手册,但是虽然我发现了很多关于如何操作回溯实例的信息,但我希望能够访问类型(类)本身。

traceback对象是类型模块下存在的TracebackType的实例。

types.TracebackType

traceback对象的类型,例如sys.exc_info()[2]

>>> from types import TracebackType    
>>> isinstance(info[2], TracebackType)
True    
>>> TracebackType
<class 'traceback'>

正如@ user2357112指出的, TracebackType这个名称基本上是内部traceback类型的别名,它是通过在types模块中引发异常设置的 实际的traceback类型可以在CPython代码中找到。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM