Python中的装饰器怎么传递参数

52次阅读
没有评论

共计 456 个字符,预计需要花费 2 分钟才能阅读完成。

在 Python 中,装饰器可以接受参数,可以通过在装饰器函数外再包一层函数来实现传递参数。例如:

def my_decorator(param):
    def decorator(func):
        def wrapper(*args, **kwargs):
            print("Decorator with param: {}".format(param))
            return func(*args, **kwargs)
        return wrapper
    return decorator

@my_decorator("Hello")
def say_hello():
    print("Hello, world!")

say_hello()

在上面的例子中,my_decorator 是一个接受参数的装饰器函数。当使用装饰器时,可以传递参数给 my_decorator,然后返回一个装饰器函数decorator,该函数接受被装饰函数作为参数,并返回包裹原始函数的新函数wrapper。在wrapper 函数中,我们可以使用传递给 my_decorator 的参数。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2024-03-19发表,共计456字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)