Python 之 闭包 & 装饰器 + 实例详解

闭包:

  • 函数的多层嵌套,  在函数内再定义一个函数,并且这个函数用到函数的变量,那么将内部的函数以及用到外部的一些变量看着一个特殊的对象, 称之为闭包
  • 实例: ( 左: 面向对象    右: 闭包)
    • 总结: 函数,    匿名函数,    闭包,    面向对象,    有什么区别 ?
      • 1. 普通函数: 能完成 复杂的功能...传递的是这个函数的引用, 只有功能
      • 2. 匿名函数: 能完成 简单的功能...传递的是这个函数的引用, 只有功能
      • 3. 闭包: 能够完成 较为复杂的功能...比函数强大, 传递的是这个闭包中的 函数数据, 占用资源比较小
      • 4. 面向对象: 能够完成 最为复杂的功能...比闭包强大, 传递的是 很多功能 + 数据, 占用大量空间, 浪费资源

 

装饰器:

  • 装饰器由来:
    • 开放封闭原则:

      • 简单来说,规定已经实现的功能代码不允许被修改,但可以被扩展
      • 封闭: 已实现的功能代码块
      • 开放: 可扩展开发
  • 装饰器是由函数去生成的,用于装饰某个 函数 或者 方法 或者 ,利用闭包的原理, 对一个目标函数进行装饰, 让这个目标函数在执行之前 或者 执行之后做一些操作
  • 通用的装饰器示例: ( 在闭包里添加return )

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值