Skip to content

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()