用于调试的打印工具

dbug的Python项目详细描述


简介

快速调试功能打印上下文信息。

每个函数都有3个可选的仅限关键字的参数:

  • i:缩进级别(默认为0)
  • indent_str:一级缩进字符串(默认为2个空格)
  • stream:要输出的类似文件的对象(默认为stderr)

最后两个参数实际上默认为模块变量dbug.\u dindent_strdbug.\u dstream

每个函数{TT4}$存在2种味道:

  • F:正常
  • nF:在

可用功能

  • [n]D(*args, **kw):只需打印*args
  • [n]Dvar(*expr, **kw):为每个表达式打印exprf'{expr} = {eval(expr)}\n'
  • [n]DWAI(**kw):打印w-这里a-mi格式如下:module.function(param=val_param, param2=val_param2...) # /path/to/function/definition:line_of_DWAI_call
  • [n]DNL(**kw):打印一个n-ewl-ine(iindeit_str对这个没有影响
  • Dnop(res, *args):返回res,以便可以在列表理解中执行任何副作用函数(最好与Dvar()一起使用)
  • DnopL(*args, res):与Dnop相同,但先执行副作用

可用课程

还有一个Dbug类,它接受streamindent_str作为参数,并且具有前一个函数的普通版本,没有前导d,传递它们stream,并将缩进级别默认为Dbug.indent_level

  • Dbug.__call__(*args, **kw)调用D
  • Dbug.var(*expr, **kw)调用Dvar
  • Dbug.var(*expr, **kw)调用Dvar
  • Dbug.WAI(**kw)调用DWAI
  • Dbug.NL(**kw)调用NL

这个类也是一个context manager并且您可以执行如下操作

with Dbug(open('log', 'w')) as D :
  D.WAI()
  D.var('a')

作为更改Dbug实例对象缩进级别的快捷方式,可以使用shift运算符

with Dbug(open('log', 'w')) as D :
  D.WAI()
  D>>1  # indent level is now 1
  D.var('a')
  D<<1  # indent level is back to 0

安装

pip install dbug

历史

1.0.b5

  • fix插入打印D()
  • fix自述正交图

1.0.b4

  • add__all__module变量只导出相关对象
  • addDbugclass
  • fixD()上输入错误,导致无法使用传递的流

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

推荐PyPI第三方库


热门话题
构造函数的java条件调用   类Dog中的java构造函数Dog不能应用于给定类型   java jsch和运行“sudo su”   java将队列和堆栈相互复制   java如何在netbeans项目的文件夹中添加库   java While循环在我的代码中不存在   如何在XML中使用java方法的返回值   java是否可以在不写入文件的情况下将字符串/字节数组作为文件发布?   java为什么这些字符串不相等?   sockets客户机-服务器java编程,用户可选择   java如何在SpringMVC和hibernate中保存模型返回视图的列表   java如何修复组织。openqa。硒。WebDriverException:未知错误   Java,Ant错误:编码Cp1252的不可映射字符   JAVAlang.ClassCastException:[Ljava.lang.String;与java.lang.String不兼容   java如何使用JDK8(可选)为空字段创建自定义IntelliJ getter模板   java Tomcat6响应。sendRedirect()404错误