77-简单的装饰器
装饰器的简单用法:
def color(func): def red(): return '\033[31;1m%s\033[0m' % func() return red def boy(): return "Hello boy!!!" @color def girl(): return "Hello girl!!!" if __name__ == "__main__": print(boy()) # 没有调用装饰器,颜色不会变的。 hello = color(boy) # 此种写法可以换成为hello加上@color的写法。 print(hello()) print(girl()) # welcome因为有装饰器,所以调用时不是调用welcome函数, # 而是调用color(welcome)() # color(welcome)返回red,color(welcome)()等价于red()
结果输出: