栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Python:消除堆栈跟踪到库代码中?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python:消除堆栈跟踪到库代码中?

感谢Alex的指导,以下是代码:

def trimmedexceptions(type, value, tb, pylibdir=None, lev=None):    """trim system packages from the exception printout"""    if pylibdir is None:        import traceback, distutils.sysconfig        pylibdir = distutils.sysconfig.get_python_lib(1,1)        nlev = trimmedexceptions(type, value, tb, pylibdir, 0)        traceback.print_exception(type, value, tb, nlev)    else:        fn = tb.tb_frame.f_pre.co_filename        if tb.tb_next is None or fn.startswith(pylibdir): return lev        else: return trimmedexceptions(type, value, tb.tb_next, pylibdir, lev+1)import syssys.excepthook=trimmedexceptions# --- test pre ---def f1(): f2()def f2(): f3()def f3():    import xmlrpclib    proxy = xmlrpclib.ServerProxy('http://nosuchserver')    proxy.f()f1()

产生以下堆栈跟踪:

Traceback (most recent call last):  File "./tsttraceback.py", line 47, in <module>    f1()  File "./tsttraceback.py", line 40, in f1    def f1(): f2()  File "./tsttraceback.py", line 41, in f2    def f2(): f3()  File "./tsttraceback.py", line 45, in f3    proxy.f()gaierror: [Errno -2] Name or service not known


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/652659.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号