PYTHON训练营DAY27

装饰器

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

python 复制代码
@logger
def multiply(a, b):
    return a * b
 
multiply(2, 3)  
# 输出:
# 开始执行函数 multiply,参数: (2, 3), {}
# 函数 multiply 执行完毕,返回值: 6
 
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 函数,观察日志输出

@浙大疏锦行

相关推荐
paopaokaka_luck4 分钟前
基于springboot3+vue3的飞行器模型实验室预约管理系统(协同过滤算法、Echarts图形化分析)
开发语言·推荐算法
lingchen19068 分钟前
用MATLAB r2010b和r2016b求解微分方程组
开发语言·算法·matlab
ttwosix14 分钟前
JavaEE初阶 多线程 3
java·开发语言
SamChan9020 分钟前
Python+OpenCV检测PDF翻译后排版偏移:像素级格式一致性验证
python·opencv·ai·pdf·wpf
会博通·代码搬运工21 分钟前
双层PDF技术实现与档案数字化系统的API集成实践
数据库·人工智能·分布式·python·计算机视觉·api集成
峥嵘life22 分钟前
Android16 系统 APEX 模块调试总结
android·大数据·开发语言
健康平安的活着23 分钟前
java中批量查询+stream返回map提高查询效率
java·windows·python
无线通信科研笔记26 分钟前
IEEE TWC 2026 论文精读与完整复现|H-PASS:机械—电子双重可重构波束成形
论文阅读·人工智能·笔记·python·论文笔记
OPEN-F30 分钟前
C++进阶教程:类与对象深入
java·开发语言·c++
青 春 记 忆33 分钟前
零基础入门python35:Django用户登录与权限边界
python·django·后端开发