大家好,我是志军,10年Python经验
这是Python必知必会系列的第5篇
Python装饰器是一个非常实用的功能,它允许程序员修改或增强现有函数或方法的行为,而不需要修改原始代码。
装饰器本质上是一个函数,这个函数可以接受另一个函数作为参数,并返回一个新的函数。
在本文中,我将分享5个装饰器的高频率使用场景,并通过实际示例来说明如何使用它们。
1. 日志记录
在执行函数前后记录日志是装饰器的一种常见用途。这在调试和监控应用程序时非常有用。
def log_decorator(func): def wrapper(*args, **kwargs): print(f"{func.__name__} 函数正在执行...") result = func(*args, **kwargs) print(f"{func.__name__} 函数执行完成.") return result return wrapper @log_decorator def test_function(x): return x * x test_function(5)
2. 性能测试
使用装饰器记录函数的执行时间,有助于性能分析和优化。
import time def timing_decorator(func): def wrapper(*args, **kwargs): start_time = time.time() result = func(*args, **kwargs) end_