Python之闭包装饰器-创新互联

1.什么是闭包?
多层函数嵌套,(函数里面还有定义函数,一般是两个),往往内层函数会用到外层函数的变量,把内层函数以及外部函数的变量当成一个特殊的对象,这就是闭包。闭包比面向对象更纯净、更轻量,既有数据又有执行数据的代码;比普通函数功能更强大,不仅有代码还有数据;
2.匿名函数、普通函数、闭包、面向对象的区别?
1). 匿名函数能够完成基本的简单功能,传递是这个函数的引用 只有功能。
2). 普通函数能够完成较为复杂的功能,传递是这个函数的引用 只有功能。
3). 闭包能够将较为复杂的功能,传递是这个闭包中的函数以及数据。
4). 对象能够完成最为复杂的功能,传递是数据+功能,但占用大量空间,浪费资源。
3.什么是装饰器?
利用闭包的基本原理,对一个目标函数进行装饰,即在执行一个目标函数之前、之后执行一些特定的事情。
通用的装饰器示例如下:
def set_func(func):
print("---开始进行装饰")
def call_func(*args, kwargs):
print("---这是目标函数之前做的事情----") # 如果需要的话
ret = func(*args, * kwargs) # 拆包
print("---这是目标函数之后做的事情----") # 如果需要的话
return ret # 如果需要有返回值的话可以加上返回值
return call_func
@set_func # 相当于 test1 = set_func(test1)
def test1(
args,
kwargs):
"""函数内部要做的功能"""
return "ok" # 如果需要的话,否则就返回None

创新互联公司是一家集网站建设,宁陵企业网站建设,宁陵品牌网站建设,网站定制,宁陵网站建设报价,网络营销,网络优化,宁陵网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

当前文章:Python之闭包装饰器-创新互联
分享地址:https://www.cdcxhl.com/article24/cejece.html

成都网站建设公司_创新互联,为您提供网站制作建站公司品牌网站制作微信小程序网站营销域名注册

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

绵阳服务器托管