python-装饰器pysnooper
变量追踪器?
""" @pysnooper 日志打印工具,显示运行的时间及运行到当前代码时各变量的值(默认只打印局部变量的值),
可用于装数类、函数,
可直接使用with pysnooper.snoop(): 只打印函数里的变量 output='a.txt' #将结果保存到文件a.txt prefix='shuzf' #打印信息前添加shuzf watch=("a",) #打印变量a的值,不管是不是全局还是局部变量 watch_explode=("a",) #打印变量a的子值,不管是不是全局还是局部变量 列表/字典里的值 depth=1 #设置追踪级别默认1,若装饰函数调用了其他函数,则需要设置为2 """ import pysnooper @pysnooper.snoop(watch=("a",)) def bSort(arr): for i in range(len(arr)-1): for j in range(len(arr)-i-1): if arr[j] > arr[j+1]: arr[j],arr[j+1] = arr[j+1],arr[j] return arr bSort([3,2,1]) @pysnooper.snoop(watch=("a",)) def test1(c): global a a = [1,2,3] def inner(): nonlocal c c += 10 print('局部变量', locals()) print('全局变量', list({key: value} for key, value in globals().items() if ('__' not in key and 'pysnooper' not in key))) return inner() test1(1) def test2(): lst = [i for i in range(10)] with pysnooper.snoop(): lower = min(lst) upper = max(lst) mid = (lower + upper) / 2 print(lower, mid, upper) test2()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix