欢迎光临
我们一直在努力

Python 调试实用程序

python 调试实用程序

pdbwhereami

目的

这是一个实用程序模块,可帮助使用以下功能调试 python 源代码

  • 谁阿米
  • 我在哪里
  • 谁打电话给我
  • 叫树
  • 谁是爸爸

它用在哪里?

此模块在几个关键方面为开发人员提供帮助,特别是在调试和维护代码方面。以下是主要好处:

1.调试:

  • 识别错误: 当发生错误时,知道确切的行号和文件可以显着减少搜索原因所花费的时间。通过在错误消息中调用这些函数,开发人员可以快速查明问题出现的位置。
  • 可追溯性: 通过记录行号和文件名,开发者可以追踪程序的执行路径,特别是在处理复杂的代码库或多文件项目时。

2.记录:

  • 详细日志: 在日志消息中包含行号和文件名可提供详细的上下文,使日志信息更丰富且更易于解释。
  • 自动监控:在大型系统中,自动监控工具可以使用这些详细信息来标记代码中经常引起问题的特定部分,从而有助于主动维护。

3. 断言和调试构建:

  • 断言: 使用像assert()这样的宏以及whoami、whereami、whocalledme、calledtree和whosdaddy有助于在开发过程中捕获逻辑错误。当断言失败时,它会打印行号和文件名,从而更容易调试。
  • 条件编译: 对于调试版本,可以使用这些宏包含附加诊断信息,而不会影响发布版本。

4.文档和维护:

  • 代码审查: 在代码审查过程中,拥有详细的错误日志可以帮助审查人员了解流程并更有效地识别潜在的问题区域。
  • 维护:对于长期维护,包含行号和文件名的详细错误报告可以帮助新开发人员理解和修复问题,而无需深入熟悉整个代码库。

通过利用 whoami、whereami、whocalledme、calledtree 和 whosdaddy,开发人员可以创建更健壮、可维护且更易于调试的代码。

如何使用它?

from pdbwhereami import whoami, whereami, whocalledme, calledtree, whosdaddy

def debug_utility():
    whoami()
    whoami("i am in test_whoami function")

    print()

    whereami()
    whereami("i am in test_whereami")
    whereami(obsolete_path = true)
    whereami(path_depth=6)

    print()

    whocalledme()
    whocalledme(obsolete_path = true)
    whocalledme(path_depth=6)

    print()

    calledtree()
    tstr = calledtree(verbose=false)
    print(tstr)
    calledtree(tree_depth=1)
    calledtree(tree_depth=2)

    print()
    whosdaddy()

debug_utility()

输出

[debug_utility] ->
[debug_utility] -> i am in test_whoami function

[whereami/main.py:71]:debug_utility ->
[whereami/main.py:72]:debug_utility -> i am in test_whereami
[/home/bhagavan/whereami/main.py:73]:debug_utility ->
[/home/bhagavan/whereami/main.py:74]:debug_utility ->

[whereami/main.py:93]:<module> ->
[/home/bhagavan/whereami/main.py:93]:<module> ->
[/home/bhagavan/whereami/main.py:93]:<module> ->

#1[/home/bhagavan/whereami/main.py:84]:debug_utility    ] ->
</module></module></module>

安装

使用点

pip install pdbwhereami

使用来源

git clone https://github.com/bhagavansprasad/pdbwhereami.git
cd pdbwhereami
pip insall ./
赞(0) 打赏
未经允许不得转载:码农资源网 » Python 调试实用程序
分享到

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册