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

【python基础知识】Day 27 函数专题2:装饰器

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

装饰器教程

作业:

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

def logger(func):def wrapper(*args, **kwargs):  # args 是元组,kwargs 是字典print(f"开始执行函数 {func.__name__},参数: {args}, {kwargs}")result = func(*args, **kwargs)print(f"函数 {func.__name__} 执行完毕,返回值: {result}")return resultreturn wrapper@logger
def multiply(a, b):return a * b multiply(2, 3)  # 调用 multiply 函数,观察日志输出

 func.__name__  :按照pep8的约定,在一个变量前后都加上两个下划线代表着这是一个Python内置的变量,是自动创建的。作用返回 func 的名称更详细的可以问AI

http://www.dtcms.com/a/194899.html

相关文章:

  • 实现书签-第一部分
  • 浮点数截断法:四舍五入的精确模拟
  • 【ARM】MDK如何将变量存储到指定内存地址
  • springCloud/Alibaba常用中间件之Seata分布式事务
  • Seata源码—4.全局事务拦截与开启事务处理一
  • Armijo rule
  • AI:初识NLP
  • Java 并发编程归纳总结(可重入锁 | JMM | synchronized 实现原理)
  • Jetson Orin Nano - 命令刷机笔记
  • GEE计算 RSEI(遥感生态指数)
  • MYSQL创建索引的原则
  • 【Spring Boot后端组件】mybatis-plus使用
  • Python炫酷星空
  • 使用Python调用DeepSeek的示例
  • 【项目】自主实现HTTP服务器:从Socket到CGI全流程解析
  • 报表控件stimulsoft教程:如何在报表和仪表板中创建热图
  • AQS 基本思想与源码分析
  • 【论信息系统项目的整合管理】
  • [基础] HPOP、SGP4与SDP4轨道传播模型深度解析与对比
  • 后端框架(3):Spring(2)
  • Oracle 批量操作脚本解析:动态执行与分批次删除
  • 项目班——0513——短信验证
  • 适合学校使用的桌面信息看板,具有倒计时、桌面时钟、课程表、天气预报、自动新闻联播、定时关机、消息通知栏、随机点名等功能。
  • PPT 转高精度 PDF API 接口
  • Spring循环依赖详解
  • Qt控件:交互控件
  • 分布式锁: Redisson 实现分布式锁的原理与技术细节
  • Transformer网络结构
  • 大数据技术的主要方向及其应用详解
  • 一台入网的电脑有6要素, 机器名,mac,ip,俺码,网关,dns,分别有什么作用