Python 装饰器实战:用@syntax 优雅地增强函数功能

发布时间:2026/5/21 4:19:54

Python 装饰器实战:用@syntax 优雅地增强函数功能 # Python 装饰器实战用syntax 优雅地增强函数功能## 什么是装饰器装饰器Decorator是 Python 中的一种高级特性它允许你在不修改原函数代码的情况下动态地给函数添加功能。简单来说装饰器就是一个包装器它包裹住你的函数在函数执行前后添加额外的逻辑。## 基础语法pythondef my_decorator(func):def wrapper(*args, **kwargs):print(函数执行前...)result func(*args, **kwargs)print(函数执行后...)return resultreturn wrappermy_decoratordef say_hello(name):print(fHello, {name}!)say_hello(二狗)输出函数执行前...Hello, 二狗!函数执行后...## 实战计时装饰器pythonimport timefrom functools import wrapsdef timer_decorator(func):wraps(func)def wrapper(*args, **kwargs):start time.time()result func(*args, **kwargs)end time.time()print(f{func.__name__} 执行耗时{end - start:.4f}秒)return resultreturn wrappertimer_decoratordef slow_function():time.sleep(1)print(任务完成)slow_function()## 带参数的装饰器pythondef repeat(times):def decorator(func):wraps(func)def wrapper(*args, **kwargs):for _ in range(times):func(*args, **kwargs)return wrapperreturn decoratorrepeat(3)def greet(name):print(fHi, {name}!)greet(老板)## 总结装饰器是 Python 中最优雅的特性之一广泛应用于- 日志记录- 性能测试- 权限验证- 缓存机制- 事务处理掌握装饰器让你的代码更加 Pythonic

相关新闻