python装饰器
发布日期:2021-05-07 09:24:37 浏览次数:22 分类:精选文章

本文共 913 字,大约阅读时间需要 3 分钟。

装饰器

A是一个函数
B是一个函数
B函数里面可以插入A函数 也可以插入其他E,F,G函数

给该A函数添加B函数功能,不改变A函数的接口

未使用装饰器

def A():    print("A的功能__执行")def B(a):    def C():        print("装饰器功能一__执行")        a()        print("装饰器功能二__执行")    return C #返回一个包装过后的函数 1
2
3
D=B(A)#返回函数CD()#执行函数

主要执行了三个功能

print("装饰器功能一__执行")print("A的功能__执行")print("装饰器功能二__执行")
装饰器功能一__执行A的功能__执行装饰器功能二__执行

使用装饰器

def B(a):    def C():        print("装饰器功能一__执行")        d = a()        print("装饰器功能二__执行")        return d# 仅仅返回变量d  即是执行a()    return C# 接着上面仅仅返回变量d  即是执行a() 再返回一次函数C    #返回C函数包含  1
2
3
@Bdef A(): print("A的功能__执行")A()#执行经过包装过后的函数A 意思为执行返回的函数C

当A函数里面有参数时

def B(a):    def C(*args,**kwargs):        print("装饰器功能一__执行")        d = a(*args, **kwargs)        print("装饰器功能二__执行")        return d    return C@Bdef A(n,m):    print("A的功能__执行")	return n+mA(1,2)
装饰器功能一__执行A的功能__执行装饰器功能二__执行
上一篇:python软件源 临时使用清华源
下一篇:python os库

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年03月28日 02时42分40秒