Appearance
Python 装饰器
装饰器
装饰器其实就是一个函数,它可以在不修改原函数代码的情况下,给这个函数加一些额外的功能。
装饰器作用
- 避免重复代码:如果有很多函数需要相同的功能(比如打印日志),可以把这个功能放到装饰器里,不用每次都写。
- 增强功能:装饰器可以在原函数的前后做一些额外的操作,比如在执行函数前先打印日志,或者计算函数运行的时间。
装饰器示例
装饰器本质是一个函数,它接受另一个函数作为参数,并返回一个新的函数。
python
def decorator(func):
def wrapper():
print("Before function call")
func() # 调用原函数
print("After function call")
return wrapper
@decorator # 这行就相当于把 greet 函数“包装”起来
def greet():
print("Hello!")
greet()