跳转到主要内容

Jupyter笔记本中的人性化跟踪

项目描述

为Python提供更友好的错误消息

例如C++等语言已经获得了非常有用的错误消息和诊断,并提供了如何修复问题的提示,但Python仍然停留在裸露的堆栈跟踪上,这非常令人畏惧,并且通常并不很有帮助。

Niceback Niceback跟踪显示用户程序终止的位置。

Niceback隐藏了不相关的IPython/notebook内部细节,并简洁地显示了发生的情况(程序被中断)以及发生的位置。这可以通过将KeyboardInterrupt消息转换为更合适的内容,例如“您已停止程序”,来进一步改进,但上面显示的只是默认处理,从未考虑过这种特定错误。

尽管IPython和Google Colab的开发者已经对回溯进行了调整以改进,但很明显还有很多工作要做

Colab Google Colab的标准回溯。

即使是经验丰富的程序员,阅读一堵文字墙以找到错误的相关细节也是一件令人烦恼的事情。

在更复杂的情况下,如果可能得到许多标准回溯屏幕,Niceback将生成可滚动的输出,专注于相关细节,同时在每个可能相关的框架上提供变量检查器

Nested exceptions Niceback带有嵌套异常的输出。

使用方法

在您的笔记本开头

!pip install niceback
%load_ext niceback

背景

本项目是一个概念验证,展示了以人类可读的方式格式化错误消息的现代方法。使用启发式方法默认隐藏无关的堆栈帧,并显示问题的实际位置。由于程序崩溃后否则无法找到变量内容,每个堆栈帧中内置的变量检查器可以快速揭示源错误中提到的变量问题。注意添加相关细节,例如笔记本输入字段编号和通常不在Python跟踪回溯中出现的类名,同时隐藏过长路径和其他杂乱信息。

所有输出都是HTML格式,因此只能在Jupyter笔记本和其他基于浏览器的系统中使用(这应该对Web开发框架也有用)。这允许交互性和比文本控制台更好的布局。

许可证

公共领域或等效。

需要帮助

我无法独自维护这个项目。如果您喜欢更友好的跟踪回溯的想法,请提出您的帮助以进行开发!欢迎提交拉取请求,但如果您能将其作为自己的项目来接管,那就更好了。

截至目前,该项目尚未经过适当的精炼以供发布。然而,它已经足够有用,以至于我总是在我的笔记本中使用它,它真的让Python开发变得更加顺畅。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

niceback-0.4.2.tar.gz (594.3 kB 查看哈希值)

上传时间

构建分发

niceback-0.4.2-py3-none-any.whl (10.0 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页