以visionmedia的node.js调试模块为模型的微型python调试实用程序

pydebug的Python项目详细描述


以visionmedia的node.js debug为模型的微型python调试实用程序 模块和python 3打印功能

安装

$ python setup.py install

用法

使用debug,您只需调用导出的函数来生成 调试函数,向其传递一个名称,该名称将确定 返回函数,或模拟 python 3print函数,但默认情况下,打印到sys.stderr。一个 为每个函数选择唯一颜色以提高可见性。

示例test.py

importpydebugimporttime## pydebug.debug(name)## once you have initialized the debug module you can call it as shown below## debug(*objects, sep=' ', end='\n', file=sys.stderr, flush=False)#debug=pydebug.debug("test")debug("hi there2")debug2=pydebug.debug("test2")debug2("awesome")debug({"awesome":True},True,1,"test")debug([],{1,2,3},{"awesome":True},True,1,"test")time.sleep(0.1)debug('should be milliseconds now')time.sleep(1)debug('should be seconds now')

然后使用debug环境变量根据 空格或逗号分隔的名称。下面是一些示例:

$ DEBUG=* python test_pydebug.py
$ DEBUG=test python test_pydebug.py
$ DEBUG=test2 python test_pydebug.py
$ DEBUG=test* python test_pydebug.py

微秒差异

当主动开发应用程序时,可以看到 在一次debug()调用和下一次调用之间花费的时间。假设 示例在请求资源之前和之后调用debug()。 同时,“+nnnus”将显示 电话。

当文件不是tty时

当文件不是tty时,调用to_utc_string(),模拟 javascriptDate#toUTCString()方法的默认行为 在node.js调试模块中使用,使其在记录 调试信息如下所示

$ DEBUG=* python test_pydebug.py 2>&1 | grep test
$ DEBUG=* python test_pydebug.py 2>&1 | grep test2

约定

如果您在一个或多个库中使用此函数,则应该使用 库的名称,以便开发人员可以将调试切换为 不需要猜名字。如果有多个调试器,则 应该在它们前面加上库名称并使用“:”分隔 特征。例如,connect中的“bodyparser”将是 “连接:BodyParser”。

通配符

“*”字符可用作通配符。例如,假设 库中有名为“connect:bodyparser”、“connect:compress”的调试器, “connect:session”,而不是用 DEBUG=connect:bodyParser,connect.compress,connect:session,您可以 只需执行DEBUG=connect:*,或使用此模块运行所有操作 只需使用DEBUG=*

也可以通过用“--”预置特定的调试器排除特定的调试器。 字符或空白。例如:

$ DEBUG=test2,-test python test_pydebug.py
$ DEBUG="test2 -test" python test_pydebug.py

许可证

麻省理工学院许可证(MIT)

版权所有(c)2013 Malcom Gilbert

特此免费向任何获得 本软件和相关文档文件的副本 “软件”),无限制地处理软件,包括 但不限于使用、复制、修改、合并、发布, 分发、再授权和/或出售软件副本,以及 允许向其提供软件的人员这样做,但须遵守 以下条件:

上述版权公告及本许可公告须包括在内 在软件的所有副本或大部分中。

软件按“原样”提供,不作任何形式的保证 或默示的,包括但不限于 适销性、适合特定目的和不侵权。 在任何情况下,作者或版权持有人均不对任何 索赔、损害赔偿或其他责任,无论是在合同诉讼中, 侵权行为或其他,由 软件或软件中的使用或其他交易。

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

推荐PyPI第三方库


热门话题
java Oracle将休眠为ISO 8601日期格式   当有线程时,swing计时器不会停止。睡在Java里面   如何使用swing在java中清空密码字段值(字符串)   如何在编辑文本字段上设置单词java(安卓)   单独类中的java OkHttp请求   java Tomcat配置文件/上下文xml似乎已经崩溃了。请确保它是可分析和有效的。有关详细信息,请参阅服务器日志   java在科尔多瓦的ActivityResult上传递   java如何在映射中保持插入顺序。工厂?   “DataOutputStream”和“ObjectOutputStream”之间的java差异   java从FTP文件列表中获取项目的时间戳   java如何在spring security中为每个人忽略一些资源/URL?   模板类嵌套时新的Java泛型类构造函数问题   java读取并查找文件大小为1GB的行   java如何使用字符串say“stop”停止整数格式的while循环   java是否可以在应用程序启动之间将JVM保留在内存中?   java Springboot出现“出现意外错误(类型=内部服务器错误,状态=500)”的问题