• 在线客服

  • 扫描二维码
    下载博学谷APP

  • 扫描二维码
    关注博学谷微信公众号

  • 意见反馈

原创 装饰器是什么?为什么要学习装饰器?

发布时间:2021-12-06 11:11:22 浏览 2914 来源:博学谷 作者:小谷

    装饰器是什么?为什么要学习装饰器?装饰器用于拓展原来函数功能的一种函数,在不改变原函数名或类名的情况下给函数增加新的功能。给已有函数增加额外功能的函数,它本质上就是一个闭包函数,我们学习得主要目的是掌握装饰器的语法格式。

    1、装饰器是什么?

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

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

    2、装饰器的示例代码

    装饰器的示例代码

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

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

    执行结果:

    执行结果

    3、装饰器语法糖写法

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

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

    执行结果:

    执行结果2

    4、装饰器总结

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

    装饰器的语法格式

    装饰器的语法糖用法: @装饰器名称,同样可以完成对已有函数的装饰操作。

    申请免费试学名额    

在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!

上一篇: Python进阶如何修改闭包内使用的外部变量? 下一篇: 装饰器的作用及使用方法是什么?

相关推荐 更多

热门文章

  • 前端是什么
  • 前端开发的工作职责
  • 前端开发需要会什么?先掌握这三大核心关键技术
  • 前端开发的工作方向有哪些?
  • 简历加分-4步写出HR想要的简历
  • 程序员如何突击面试?两大招带你拿下面试官
  • 程序员面试技巧
  • 架构师的厉害之处竟然是这……
  • 架构师书籍推荐
  • 懂了这些,才能成为架构师
  • 查看更多

扫描二维码,了解更多信息

博学谷二维码