一行代码优化输出的异常信息
pip install pretty-errors
写一个函数测试:
def divided_zero():
for i in range(10, -1, -1):
print(10/i)
divided_zero()
在没有import这个pretty-errors
前,输出的错误信息有些冗余:
Traceback (most recent call last):
File "c:\Users\HUAWEI\.vscode\extensions\ms-python.python-2019.11.50794\pythonFiles\ptvsd_launcher.py", line 43, in <module>
main(ptvsdArgs)
File "c:\Users\HUAWEI\.vscode\extensions\ms-python.python-2019.11.50794\pythonFiles\lib\python\old_ptvsd\ptvsd\__main__.py",
line 432, in main
run()
File "c:\Users\HUAWEI\.vscode\extensions\ms-python.python-2019.11.50794\pythonFiles\lib\python\old_ptvsd\ptvsd\__main__.py",
line 316, in run_file
runpy.run_path(target, run_name='__main__')
File "D:\anaconda3\lib\runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
File "D:\anaconda3\lib\runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "D:\anaconda3\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "d:\source\sorting-visualizer-master\sorting\debug_test.py", line 6, in <module>
divided_zero()
File "d:\source\sorting-visualizer-master\sorting\debug_test.py", line 3, in divided_zero
print(10/i)
ZeroDivisionError: division by zero
我们使用刚安装的pretty_errors
,import
下:
import pretty_errors
def divided_zero():
for i in range(10, -1, -1):
print(10/i)
divided_zero()
此时看看输出的错误信息,非常精简只有2行,去那些冗余信息:
ZeroDivisionError:
division by zero
完整的输出信息如下图片所示,中间一道分割线,然后输出异常的堆栈,最后是精简的异常名称和提示。
cool!
近期小例子:函数的五类参数使用例子;绘制时间线轮播图;python参数类型使用总结;绘制水球图;lambda参数之坑;Python绘制仪表盘;参数的默认值陷阱!;chain串联多个迭代对象;机器学习中会涉及到的随机选择样本;使用namedtuple的小例子; pkuseg 做分词,超级nice~; 写一个装饰器:统计异常发生次数和时间;对象可被调用的实现方法;求任意维度两点间距离; 两种合并字典的方法对比; 计算和聚合同时进行; groupby 分组; plotly画柱状图+折线图;
欢迎star
小例子库,直接点击阅读原文