2019-11-15 |

Decorators

在前面的示例中,我们通过将包含函数的变量替换为包装版本来美化函数。
def decor(func):
  def wrap():
    print("============")
    func()
    print("============")
  return wrap

def print_text():
  print("Hello world!")

print_text = decor(print_text)
这种模式可以在任何时候使用,包装任何功能。 Python通过在装饰函数名称和@符号之前挂起函数定义来支持在装饰器中包装一个函数。 如果我们定义一个函数,我们可以用@符号“装饰”它:
@decor
def print_text():
  print("Hello world!")
这将具有与上述代码相同的结果。
单个函数可以有多个装饰器。

0

发表评论

    评价:
    验证码: 点击我更换图片
    最新评论