您尚未登录,请登录后浏览更多内容! 登录 | 加入最MC

QQ登录

只需一步,快速开始

 找回密码
 加入最MC

QQ登录

只需一步,快速开始

查看: 53|回复: 0
打印 上一主题 下一主题

[【少女の茶会】] 关于:装饰器是什么为什么要学习装饰器

[复制链接]
跳转到指定楼层
楼主
发表于 2022-1-26 22:48:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

装饰器是什么为什么要学习装饰器装饰器用于拓展原来函数功能的一种函数,在不改变原函数或类的情况下给函数增加新的功能。给已有函数增加额外功能的函数,它本质上就是一个闭包函数,我们学习得主要目的是掌握装饰器的语法格式。爱站云的具体问题可以到我们网站了解一下,也有业内领域专业的客服为您解答问题,为成功合作打下一个良好的开端!




1、装饰器是什么



给已有函数增加额外功能的函数,它本质上就是一个闭包函数。



装饰器的功能特点:不修改已有函数的源代码;不修改已有函数的调用方式;给已有函数增加额外的功能。



2、装饰器的示例代码







代码说明:闭包函数有且只有一个参数,必须是函数类型,这样定义的函数才是装饰器。



写代码要遵循开放封闭原则,它规定已经现的功能代码不允许被修改,但可以被扩展。



执行结果:







、装饰器语法糖写法



如果有多个函数都需要添加登录验证的功能,每次都需要编写=()这样代码对已有函数进行装饰,这种做法还是比较麻烦。P给提供了一个装饰函数更加简单的写法,那就是语法糖,语法糖的书写格式是:@装饰器字,通过语法糖的方式也可以完成对已有函数的装饰。



说明:@等价于=()装饰器的执行时间是加载模块时立即执行。



执行结果:







4、装饰器总结



装饰器本质上就是一个闭包函数,可以对已有函数进行额外的功能扩展。装饰器的语法格式:







装饰器的语法糖用法:@装饰器称,同样可以完成对已有函数的装饰操作。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友