一个牛逼的 Python 调试工具PySnooper

原文转自:https://mp.weixin.qq.com/s/OtLr-cNethboMgmCcUx2pA

PySnooper 使用起来十分简单,开发者可以在任何庞大的代码库中使用它,而无需进行任何设置。你只需添加装饰器,并为日志输出地址指定路径,方法是将其路径指定为第一个参数。

 

目前,PySnooper在GitHub上已经获得7047个Star,371个Fork(GitHub地址:https://github.com/cool-RR/PySnooper)

 

示例

以下编写了一个函数,通过返回一个二进制列表。我们只需要通过添加@pysnooper.snoop()装饰器就可以了:

 

import pysnooper

@pysnooper.snoop()
def number_to_bits(number):
    if number:
        bits = []
        while number:
            number, remainder = divmod(number, 2)
            bits.insert(0, remainder)
        return bits
    else:
        return [0]

number_to_bits(6)

 

 

特性

stderr,则可以将选择输出到指定文件:

@pysnooper.snoop( /my/log/file.log )

查看一些非局部变量的变量值:

@pysnooper.snoop(variables=( foo.bar ,  self.whatever ))

显示函数调用的函数的snoop行:

@pysnooper.snoop(depth=2)

posted on 2019-05-03 18:20  耀扬  阅读(2184)  评论(0编辑  收藏  举报

导航