在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
装饰器是什么?为什么要学习装饰器?装饰器用于拓展原来函数功能的一种函数,在不改变原函数名或类名的情况下给函数增加新的功能。给已有函数增加额外功能的函数,它本质上就是一个闭包函数,我们学习得主要目的是掌握装饰器的语法格式。
1、装饰器是什么?
给已有函数增加额外功能的函数,它本质上就是一个闭包函数。
装饰器的功能特点:不修改已有函数的源代码;不修改已有函数的调用方式;给已有函数增加额外的功能。
2、装饰器的示例代码
代码说明:闭包函数有且只有一个参数,必须是函数类型,这样定义的函数才是装饰器。
写代码要遵循开放封闭原则,它规定已经实现的功能代码不允许被修改,但可以被扩展。
执行结果:
3、装饰器语法糖写法
如果有多个函数都需要添加登录验证的功能,每次都需要编写func = check(func)这样代码对已有函数进行装饰,这种做法还是比较麻烦。Python给提供了一个装饰函数更加简单的写法,那就是语法糖,语法糖的书写格式是: @装饰器名字,通过语法糖的方式也可以完成对已有函数的装饰。
说明:@check 等价于 comment = check(comment)装饰器的执行时间是加载模块时立即执行。
执行结果:
4、装饰器总结
装饰器本质上就是一个闭包函数,可以对已有函数进行额外的功能扩展。装饰器的语法格式:
装饰器的语法糖用法: @装饰器名称,同样可以完成对已有函数的装饰操作。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Python容器可以存储哪些类型数据?
Python容器可以存储哪些类型数据?一般可以储存四种数据类型,即list(列表)、tuple(元组)、set(集合)和dict(字典)。下面为大家详细介绍分析Python容器的存储数据类型,这些也是大家在学习Python编程基础所必须掌握的知识点,还不了解的小伙伴赶紧接着看下去吧!
8446
2019-10-23 16:17:39
爬虫Python入门好学吗?学什么?
学爬虫需要具备一定的基础,有编程基础学Python爬虫更容易学。但要多看多练,有自己的逻辑想法。用Python达到自己的学习目的才算有价值。如果是入门学习了解,开始学习不难,但深入学习有难度,特别大项目。
3896
2020-09-30 09:55:59
Python进阶如何修改闭包内使用的外部变量?
Python进阶如何修改闭包内使用的外部变量?需要学习修改闭包内使用的外部变量所需要的关键字,掌握外部函数变量使用 nonlocal 关键字来完成代码运行。
2232
2021-12-03 17:22:54
CSS常用样式属性有哪些?代码怎么写?
CSS常用样式属性有哪些?CSS样式属性有两种分别是局常用样式属性和文本常用样式属性,CSS的作用是美化HTML网页和控制页面布局,我们需要掌握这两种常用的样式属性来美化页面。接下来一起学习下经常使用的样式属性。
2274
2021-12-08 13:52:18
事务工作执行单元如何使用?其特性有哪些
事务工作执行单元如何使用?其特性有哪些?事务是用户定义的一系列执行SQL语句的操作,事务具有原子性、一致性、隔离性、持久性四大特征。
2630
2022-02-10 15:09:38