【Python】装饰器

2025-03-24  本文已影响0人  盐果儿

装饰器(Decorator)本质上是一个高阶函数,它在不修改原来函数的前提下,动态地增强/改变函数的功能。装饰器接受函数作为参数,然后返回一个新的函数。

举例:

def decorator(func):

    def wrapper(*args, **kwargs): 

        result = func(*args, **kwargs)

        print("函数执行后的操作")

        return result

    return wrapper

@decorator

def say_hello():

    print("Hello, World!")

1. @decorator语法等价于say_hello = decorator(say_hello)

2. 现在say_hello变量指向的是wrapper函数,而不是原来的say_hello

3. 当调用say_hello()时,实际调用的是wrapper(),而wrapper()内部再去调用func()(即原say_hello)

上一篇 下一篇

猜你喜欢

热点阅读