Python装饰器教学
一、装饰器简介
在Python中,装饰器是一种高级语法特性,允许你修改或增强函数、方法或类的行为,而无需修改其源代码。装饰器本质上是一个接受函数作为参数的函数,并返回一个新的函数对象。
二、装饰器的基本用法
下面是一个简单的装饰器示例:
def my_decorator(func):
def wrapper():
print("Before function call")
func()
print("After function call")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
say_hello()
输出:
Before function call
Hello!
After function call
在这个例子中,my_decorator 是一个装饰器函数,它接受一个函数 func 作为参数,并返回一个新的函数 wrapper。wrapper 函数在调用原始函数 func 之前和之后分别打印一些内容。
通过使用 @my_decorator 语法,我们可以将装饰器应用到任何函数上,如 say_hello 函数。这实际上是将 say_hello 函数作为参数传递给 my_decorator 函数,并将返回的新函数对象重新赋值给 say_hello。
三、带参数的装饰器
如果原始函数需要接受参数,我们可以在 wrapper 函数中添加相应的参数,如下所示:
def my_decorator(func):
def wrapper

本文介绍了Python中的装饰器,包括基本用法、带参数的装饰器、装饰器工厂,以及实际应用场景如日志记录。通过实例演示了如何使用装饰器增强函数并记录日志信息。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



