我是靠谱客的博主 狂野冬天,最近开发中收集的这篇文章主要介绍Python traceback模块两个对象常用方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

转载请注明出处:https://blog.csdn.net/jinixin/article/details/80383853


Python的traceback模块用于从程序运行的堆栈中提取,格式化或打印程序目前执行的上下文信息。



两个对象


初看该模块就觉得该模块的方法普遍存在两种形式,比如extract_tb(tb)与extract_stack(f),这两个方法看上去功能就是一样的,只是一个接收tb参数,一个接收f参数。那么问题来了,这两个参数分别是什么呢?


1)tb:traceback对象

调用sys.exec_info()返回值是个三元组(exc_type, exc_value, exc_traceback)。其中exec_type为异常类名,exc_value为异常类实例,个人认为也就是错误原因,exec_traceback则是跟踪记录对象,即traceback对象。该对象提供了发生异常的上下文,包含代码的执行帧,异常发生时的执行行号等信息。


2)f:frame对象

其是程序目前执行处的堆栈信息,个人认为其应该包含有traceback对象。



常用方法


1)traceback.extract_tb(tb, limit=None)

返回从traceback对象中提取到的错误列表,也就是我们平时看到的错误信息。


2)traceback.extract_stack(f=None, limit=None)

返回从当前程序堆栈中的traceback对象里提取到的错误列表,返回值和extract_tb()一致。


3)traceback.format_stack(f=None, limit=None)

该方法是format_list(extract_stack(f, limit))的缩写。


文中如有不当之处,还望包容和指出,感谢~


参考链接:

https://docs.python.org/3/library/traceback.html


最后

以上就是狂野冬天为你收集整理的Python traceback模块两个对象常用方法的全部内容,希望文章能够帮你解决Python traceback模块两个对象常用方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部