当前位置: 首页 > news >正文

打卡第28天:装饰器

知识点回顾

  1. 装饰器的思想:进一步复用
  2. 函数的装饰器写法
  3. 注意内部函数的返回值

作业

编写一个装饰器 logger,在函数执行前后打印日志信息(如函数名、参数、返回值)

实现示例

以下是一个符合要求的装饰器 logger 的代码示例,展示如何记录函数名、参数和返回值:

def logger(func):def wrapper(*args, **kwargs):print(f"开始执行函数{func.__name__}, 参数:{args}, {kwargs}")result = func(*args, **kwargs)print(f"返回的函数{func.__name__}, 返回的参数:{result}")return resultreturn wrapper
@logger
def mutiple(a, b):return a * b
mutiple(2, 3)

注意的点:

1、func函数时logger装饰器函数的参数,而wrapper函数是装饰后的函数,就是原函数经过装饰后的样子。

2、**这个符号是解包过程,是指将参数传递给func函数。

@浙大疏锦行

http://www.xdnf.cn/news/634447.html

相关文章:

  • 【HarmonyOS5】DevEco Studio 预览器与模拟工具详解
  • 掌握聚合函数:COUNT,MAX,MIN,SUM,AVG,GROUP BY和HAVING子句的用法,Where和HAVING的区别
  • TIGER - 一个轻量高效的语音分离模型,支持人声伴奏分离、音频说话人分离等 支持50系显卡 本地一键整合包下载
  • 【Android】非System用户下Persist应用不自动拉起
  • 破解C/C++内存分配与管理:内存对象模型硬核剖析
  • LeetCode-图论-岛屿数量+腐烂的橘子
  • Leetcode 3103. 查找热门话题标签 II
  • 仓鼠找sugar--lca+图论判断点在路径
  • LangChain02-Agent与Memory模块
  • git子模块--命令--列表版
  • 机器学习——支持向量机SVM
  • 类欧几里得算法(floor_sum)
  • uni-app学习笔记十四-vue3中emit的使用
  • Lua 脚本在 Redis 中的运用-23(Lua 脚本语法教程)
  • 计算机视觉中的可重复性:深入案例分析与Python代码实现
  • 【MySQL成神之路】MySQL函数总结
  • 【寻找Linux的奥秘】第八章:进程控制
  • 我的第1个爬虫程序——豆瓣Top250爬虫的详细步骤指南
  • 云原生安全:网络协议TCP详解
  • GO 语言进阶之 时间处理和Json 处理
  • 2025.05.23 Axure 动态面板学习笔记
  • Python经典算法实战
  • 股票程序化交易-使用python获取新浪财经期货行情数据
  • 历年吉林大学保研上机真题
  • 历年复旦大学保研上机真题
  • React整合【ECharts】教程003:关系图的构建和基本设置
  • 项目难点 与 缓存
  • 制作一枚可随身携带的Linux服务器虚拟机
  • Linux核心技术:Linux文件系统与bootFS/rootFS
  • 高级特性实战:死信队列、延迟队列与优先级队列(二)