网站的备案要求吗,怎么修改公司网站内容,自建网站 支付宝,长春建设招标网一般情况下#xff0c;在编写Python代码时#xff0c;如果想弄清楚为什么Python代码没有按照预期执行的原因#xff0c;比如你想知道哪些是正在运行#xff0c;哪些没有运行#xff0c;以及局部变量的值是什么... 通常我们会使用包含断点和观察模式等功能成熟的调试器在编写Python代码时如果想弄清楚为什么Python代码没有按照预期执行的原因比如你想知道哪些是正在运行哪些没有运行以及局部变量的值是什么... 通常我们会使用包含断点和观察模式等功能成熟的调试器或者直接使用 print 语句打印出来。今天和大家分享一个“贫民版”调试工具——PySnooper PySnooper允许你执行以上相同的操作只需为要调试的函数添加一个装饰器即可而不需要构建正确的print打印。你还将得到函数的详细日志包括运行了哪些代码行、何时运行以及何时更改了局部变量。 PySnooper 使用起来十分简单开发者可以在任何庞大的代码库中使用它而无需进行任何设置。你只需添加装饰器并为日志输出地址指定路径方法是将其路径指定为第一个参数。 目前PySnooper在GitHub上已经获得7047个Star371个ForkGitHub地址https://github.com/cool-RR/PySnooper
参照具体案例 #作者cacho_37967865
#博客https://blog.csdn.net/sinat_37967865
#文件PySnooperModel.py
#日期2019-06-01
#备注pip install pysnooper “贫民版”调试工具——PySnooper
import pysnooper
import random#pysnooper.snoop() # 只要添加一个装饰器
#pysnooper.snoop(depth2) # 显示函数调用的函数的snoop行
pysnooper.snoop(prefixZZZ-- ) # 运行日志前面显示ZZZ-- 突出显示这个是运行日志
def number_to_bits(number):if number:bits []while number:number, remainder divmod(number, 2)bits.insert(0, remainder)return bitselse:return [0]# 跟踪核心代码变量的运行with
def foo():lst []for i in range(10):lst.append(random.randrange(1, 1000))with pysnooper.snoop():lower min(lst)upper max(lst)mid (lower upper) / 2print(lower, mid, upper)# 将函数运行的详细日志存储到日志
pysnooper.snoop(./log/file.log)
def output():lst []for i in range(10):lst.append(random.randrange(1, 1000))if __name__ __main__:number_to_bits(6)foo()output()