当前位置: 首页 > 科技观察

一行代码让你的Pythonbug与众不同

时间:2023-03-13 23:58:11 科技观察

PrettyErrors是一款精简Python错误信息的工具,具有非常简单友好的界面。其最显着的功能是支持终端彩色输出,标记文件堆栈轨迹,查找错误信息,过滤掉冗余信息,提取关键部分,彩色标记,从而提高开发人员效率。写代码本身就很不容易,尤其是几万行代码出现一个bug,短时间内是找不到问题的。这个时候,你一定很生气,很烦躁。尤其是当Python代码出错时,满屏都是大大小小的错误信息提示,更难定位错误。首先我们看一下上面的traceback,只有一种颜色,不能像代码一样高亮。对肉眼太不友好,不能直接显示错误代码。排错慢了一步,效率太低。有办法吗?这些问题能解决吗?当然,在Python中,没有库解决不了的问题。不要乱用Python的错误输出。一行代码让bug更清晰。今天要介绍的这个库叫做pretty-errors。从名字就可以知道它的用途,就是用来美化错误信息的。下面介绍如何安装和使用PrettyErrors。使用这个命令你可以安装linuxmi@linuxmi:~/www.linuxmi.com$pipinstallpretty_errors或linuxmi@linuxmi:~/www.linuxmi.com$pip3installpretty-errors全局配置如果你想让你的每一个程序都可以这样报错的时候要清楚易读,然后运行下面一行命令全局配置。linuxmi@linuxmi:~/www.linuxmi.com$python3-mpretty_errors配置完成后,运行任何脚本都会自动美化traceback。要取消全局配置,也可以运行此命令linuxmi@linuxmi:~/www.linuxmi.com$python3-mpretty_errors输入C以清除全局配置。取消单文件全局可用后,可以根据自己的需要在需要使用pretty-errors的脚本文件中importpretty_errors,使用importpretty_errors即可。但是这样就无法美化语法错误??(SyntaxError)的格式。所以为了美化的更彻底,官方推荐大家使用python-mpretty_errors。如果你不喜欢默认的配置,试试这些函数:代码是这样的:pretty_errors.configure(filename_color=pretty_errors.BRIGHT_YELLOW)如果你发现经过上面的操作没有任何变化,那么检查PYTHON_PRETTY_ERRORS,当它的值为0时,PrettyErrors被禁用。setPYTHON_PRETTY_ERRORS=1需要注意的是你使用的终端有颜色输出功能,异常信息输出会有不同的颜色。如果不幸的是你习惯了单色终端,你可以试试pretty_errors.mono()中的设置。自定义配置示例frompretty_errorsimport*configure(filename_color=BRIGHT_BLUE)#设置文件名为亮蓝色deff():return1/0if__name__=="__main__":f()结论总的来说,这个库函数是很功能强大,效果很酷。它与PEP8规范相同。没有它也没关系,但它会更好。对于一些想要自定义错误输出场景的人来说,pretty_errors会是一个很好的解决方案。