类似于node.js debug模块的Python调试工具
项目描述
py-ndebug
基于visionmedia的node.js debug模块和Python 3 print函数的Python调试工具。
安装
$ pip install ndebug
使用
使用create
,您只需调用导出的函数来生成您的调试函数,传递一个名称,这将确定是否返回一个空操作函数,或者一个自定义装饰的函数,该函数模拟Python 3 print
函数,但默认情况下将打印到sys.stderr
。每个函数选择一个独特的颜色以提高可见性。
示例 test.py
import ndebug
import time
#
# ndebug.create(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 = ndebug.create("test")
debug("hi there2")
debug2 = ndebug.create("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 -m examples
$ DEBUG=examples:test1 python -m examples
$ DEBUG=examples:test2 python -m examples
$ DEBUG=examples:* python -m examples
微秒差
在积极开发应用程序时,可以看到一个debug()
调用和下一个调用之间花费的时间。例如,您可以在请求资源之前调用debug()
,并在之后调用它,"+NNNus"将显示调用之间花费的时间。
当文件不是TTY时
当文件不是TTY时,将调用to_utc_string()
,这模仿了node.js debug模块中使用的默认行为,即JavaScript的Date#toUTCString()
方法,这使得记录调试信息更为有用,如下所示
$ DEBUG=* python -m examples 2>&1 | grep test
$ DEBUG=* python -m examples 2>&1 | grep test2
约定
如果您在使用此库,请使用您的库名称,这样开发人员就可以根据需要切换调试,而无需猜测名称。如果您有多个调试器,请使用库名称作为前缀,并使用":"分隔功能。例如,来自Connect的"bodyParser"将是"connect:bodyParser"。
通配符
星号(*)字符可以用作通配符。例如,如果你的库中有名为 "connect:bodyParser","connect:compress","connect:session" 的调试器,而不是用 DEBUG=connect:bodyParser,connect.compress,connect:session
列出所有三个,你可以简单地做 DEBUG=connect:*
,或者要使用此模块运行所有内容,只需使用 DEBUG=*
。
您还可以通过在前面加上 "-" 字符或空格来排除特定的调试器。例如
$ DEBUG=examples:*,-examples:test1 python -m examples
许可证
MIT 许可证 (MIT)
版权所有 (c) 2013 马尔科姆·吉尔伯特 版权所有 (c) 2019 彼得·马格努松
以下条件下,任何人都可以免费获得本软件及其相关文档文件(“软件”)的副本,以无限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许向提供软件的个人这样做
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何形式的保证,明示或暗示,包括但不限于适销性、特定用途的适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论基于合同、侵权或其他法律理论,以及与软件或其使用或其他操作相关的任何事件。
项目详细信息
下载文件
下载适合您平台的应用程序。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源分发
构建分发
ndebug-0.1.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6bbaa5f88216959eb4fcb75ec4344ff3d01e13c73f771258ee283a07c9864013 |
|
MD5 | a68f858d63d02ce2c856067159c555a2 |
|
BLAKE2b-256 | 102b91c37f9031e34dc21d841347ebdcd298fa156c0a2c55a5363abd5a0d5447 |
ndebug-0.1.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cc286b22d983e4e05dab3485852c5d0bc642689d246591be4284b3cd5ef2896e |
|
MD5 | ce9cdc6a286d05ff57359aef763fa4fd |
|
BLAKE2b-256 | 5f6e6310533e6be96c746ca9dad6ebe1a9a87e96d809614533a36ea3ac2c22ae |