首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以使用color -traceback.py以彩色打印`traceback.format_exc()`

是否可以使用color -traceback.py以彩色打印`traceback.format_exc()`
EN

Stack Overflow用户
提问于 2020-04-10 19:49:06
回答 1查看 254关注 0票数 1

我正在记录traceback.format_exc()的输出。是否可以在使用print或alternative时使用colored-traceback.py对其进行着色?

示例代码:

代码语言:javascript
复制
import traceback
import colored_traceback
colored_traceback.add_hook(always=True)

a = 1 / 0 # prints colored traceback results 

try:
    a = 1 / 0
except:
    traceback.print_exc()  # prints in color white
    print(traceback.format_exc())  # prints in color white
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-11 21:44:14

colored_traceback看起来很有用,但我认为它对你的目标来说太过分了。您可以使用pygments库和几行代码来实现所需的效果:

代码语言:javascript
复制
import traceback

from pygments import formatters, highlight, lexers


try:
    a = 1 / 0
except:
    tb_text = "".join(traceback.format_exc())

    lexer = lexers.get_lexer_by_name("pytb", stripall=True)
    formatter = formatters.get_formatter_by_name("terminal256")
    tb_colored = highlight(tb_text, lexer, formatter)

    print(tb_colored)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61139640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档