Discuss / Python / 另一种思路——两个嵌套装饰器实现指定函数执行前后各打印一行日志

另一种思路——两个嵌套装饰器实现指定函数执行前后各打印一行日志

Topic source

大致思路是A装饰B,B装饰C,B是指定函数,A是执行前打印日志,B是执行后打印日志。

# -*- coding:utf-8 -*-

def forwardcall(func):
    def wrapper(*args, **kw):
        print("begin call")
        return func(*args, **kw)
    return wrapper

@forwardcall
def now(func):
    print("我才是主要逻辑所在。")
    def wrapper(*args, **kw):
        return func(*args, **kw)
    return wrapper


@now
def endcall():
    print("end call")

endcall()

努云尼尼

#2 Created at ... [Delete] [Delete and Lock User]

思路真棒,看完理解了装饰器作为函数可以有更多的使用方法

谢谢 层主 看了后总算思路清晰了。我初学编程 还需要努力

toto杰仔

#4 Created at ... [Delete] [Delete and Lock User]

学习了!!!

中间那层可以不要啊


  • 1

Reply