网站首页 > 资源文章 正文
简陋版装饰器
写一个装饰器非常简单,因为本质上装饰器就是一个返回函数的“高阶”函数而已:
- 函数作为参数传递进装饰器。
- 装饰器内定义一个函数,处理作为参数传递进来的函数。
- 返回这个装饰器内定义的函数
用一下试试看:
虽然这样可以实现所需要的功能,但其实有很大的优化空间。
普通版装饰器
第一版代码中有一个显而易见的问题,装饰器内定义的处理函数不支持kwargs,而在装饰器中支持kwargs仅仅是举手之劳而已。
第二个问题是,生成时间戳的时候采用字符串截取的形式,这种形式过于粗暴。其实可以使用strftime做字符串转换。
似乎优化得差不多了,不过依然存在改进空间。
优化版装饰器
在前两版代码中,使用print进行日志输出,其实这种处理日志的方式并不标准。
使用logging模块控制日志输出是一个更好地选择。
为了使用logging模块记录日志,需要先配置好logging相关的选项
首先,生成一个日志记录器,并配置日志等级:
配置日志格式、增加handler控制输出流:
此处可以设置handler所需要处理的日志等级,没有设置则默认使用logger自身的Level,即DEBUG等级。
最后,将此handler加入到日志记录器内:
logging完整配置如下:
使用的时候非常简单,就是把print换成logger.debug即可:
- 上一篇: 可以将代码减少一半的 五个Python 装饰器
- 下一篇: 鸿蒙开发:V2版本装饰器@Once
猜你喜欢
- 2025-03-12 JavaScript 装饰器:从入门到进阶
- 2025-03-12 深入浅出Python装饰器:让代码魔法般升级的秘籍
- 2025-03-12 微信隐藏表白代码大全,微信满屏表情代码,万圣节表白专场
- 2025-03-12 你还在用Excel做大屏吗?这几款工具做大屏很不错
- 2025-03-12 解锁鸿蒙装饰器:应用、原理与优势全解析
- 2025-03-12 实例讲解Ruby使用设计模式中的装饰器模式的方法
- 2025-03-12 python闭包和装饰器详解
- 2025-03-12 Python快速入门教程11:高级特性之装饰器
- 2025-03-12 Ollama简明教程
- 2025-03-12 手把手教你用DeepSeek+即梦AI制作专属情人节海报
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)