一个调试工具,可以帮助您在代码意外退出时发生的情况

wthell的Python项目详细描述


W地狱

wthell是python的一个调试工具,用于在代码意外执行某些操作时交互式地检查帧堆栈

安装

您可以从pip安装wthell

pip install wthell

使用

它非常容易使用wthell。只需使用wthell而不是python运行脚本

^{pr2}$

在linux shell中,您可以在命令失败后立即使用此命令:

wthell !!

很有趣,不是吗?在

或者可以在脚本中导入wthell并正常运行脚本

importwthell

如果出现未捕获的异常,您将输入如下交互式shell:

/home/gaogaotiantian/programs/wthell/test.py(6)defg(a,b):a+=h(a)b+=3>raiseException("lol")Exceptionraised:<class'Exception'> lolup(u)--gotoouterframe|down(d)--gotoinnerframeclear(cl)--cleartheconsole|reset(r)--backtotriggerframecontinue(c)--resumetheprogram|ctrl+D--quitshow(s)<func>--showsourcecodeoffunction<func>>>>

您将处于一开始引发异常的框架(函数)。在

  • {cd2>调用方
  • 键入down转到内部框架(当您已经外出时)。在
  • 键入clear清除控制台打印
  • 键入reset返回触发wthell的原始帧
  • 键入continue继续程序
  • 键入show <func_name>以显示函数的源代码

wthell将记录完整的调用堆栈,以便您可以检查任何帧。在

在堆栈中时,可以键入任何要计算的内容以帮助调试。在

>>>a13>>>a+114>>>h(a)16>>>

或者可以在代码中的任何地方触发wthell

defsuspicious_function():# I want to check here!wthell.wth()

wthell的行为类似于交互式shell。在

调试愉快!在

许可证

田高,2020年版权所有。在

根据Apache 2.0 license的条件分布。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java基于条件如何创建StringBuffers并向其添加数据   java如何用UNC路径解决“不表示可正确访问的目录”异常?   在执行提取方法重构后,java代码的速度降低了6倍   java如何修改LDAPCertStore中用于X509证书链验证的LDAP连接属性   awt如何在Java中捕获鼠标光标?   字符串如何设置Java输出流   java NumberFormatException:用于输入字符串:“8:00”   unix/linux“tail f”的Java IO文件实现   java打印输出。带有JOptionPane的txt文件   java解组总是显示0和null   使用MySQL的windows java JavaFX自包含应用程序打包   JavaSpring:方法getBean(String…)是如何实现的根据输入字符串查找bean?   java高效地更新RecyclerView网格或以其他方式显示复杂网格   java向ArrayList添加对象(String、String、int、int)   java在一组文档上使用ForkJoinPool