python训练营day27

知识点回顾:

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

作业:

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

python 复制代码
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 result
    return wrapper
 
@logger
def multiply(a, b):
    return a * b 
 
multiply(2, 3)  # 调用 multiply 函数,观察日志输出

@浙大疏锦行

相关推荐
BD_Marathon1 分钟前
【IDEA】工程与模块的管理
java·ide·intellij-idea
李绍熹2 分钟前
Lua 错误处理详解
开发语言·junit·lua
I***26152 分钟前
PHP进阶-在Ubuntu上搭建LAMP环境教程
开发语言·ubuntu·php
灯厂码农4 分钟前
C++文件操作
开发语言·c++
tgethe5 分钟前
MybatisPlus基础部分详解(中篇)
java·spring boot·mybatisplus
努力的小帅7 分钟前
Python_OpenCV入门到精通——入门篇(看这一篇就足够了!!!)
图像处理·python·opencv·计算机视觉·视觉检测·视觉项目
core5127 分钟前
【Java AI 新纪元】Spring AI 深度解析:让 Java 开发者无缝接入大模型
java·人工智能·spring·ai
Y***89087 分钟前
Spring Boot的项目结构
java·spring boot·后端
洗紫8 分钟前
Python常用内置模块教程:os/sys/datetime/random/json全解析
python
好好研究8 分钟前
MyBatis框架 - 注解形式
java·数据库·mysql·maven·mybatis