十一、装饰器

简介: 装饰器的功能就是在不改变原程序代码和不改变原程序函数的调用方式而为原程序增加功能。 闭包函数  内层函数对外层函数的变量的引用(不是全局变量) 闭包:当函数开始执行时,如果遇到了闭包,他有一个机制,# 他会永远开辟一个内存空间,将必包中的变量等值放入其中,不会随着函数的执行完毕而消失   ...

装饰器的功能就是在不改变原程序代码和不改变原程序函数的调用方式而为原程序增加功能。

闭包函数  内层函数对外层函数的变量的引用(不是全局变量)

闭包:当函数开始执行时,如果遇到了闭包,他有一个机制,
# 他会永远开辟一个内存空间,将必包中的变量等值放入其中,不会随着函数的执行完毕而消失

 

a = 'yy'
def func1(a):
    def inner():
        print(a)              
    inner()
    print(inner.__closure__)   这是判断是否为闭包函数的    这个函数为非闭包函数
fun()
#yy
none

 

a = 'yy'
def func1(a):
    a = 'yy'
    def inner():
        print(a)              
    inner()
    print(inner.__closure__)   这是判断是否为闭包函数的
fun()
#yy
(<cell at 0x000001D85FFE76D8: str object at 0x000001D860080D50>,)

  

 

装饰器

def wrapper(func1):
    def inner(*args,**kwargs):
        pass
        ret = func1(*args,**kwargs)
        return ret
    return inner
@wrapper
def func1(a,b,c,d):   参数可以任意设置
    pass

  

目录
相关文章
|
4月前
|
Python
Python学习 -- 高阶、闭包、回调、偏函数与装饰器探究
Python学习 -- 高阶、闭包、回调、偏函数与装饰器探究
22 0
|
9月前
|
JavaScript 前端开发 编译器
StencilJs 学习之组件装饰器
Stencil 是一个生成 Web Components(更确切地说,是自定义元素)的编译器。Stencil 将最流行的框架的最佳概念结合到一个简单的构建时工具中。 现在让我们一起学习其中的装饰器部分。
54 0
|
5月前
|
数据安全/隐私保护 Python
解释装饰器(decorator)的功能和用法。
解释装饰器(decorator)的功能和用法。
|
前端开发
前端学习案例3:ES6中的修饰器3
前端学习案例3:ES6中的修饰器3
40 0
前端学习案例3:ES6中的修饰器3
|
前端开发
前端学习案例1:ES6中的修饰器1
前端学习案例1:ES6中的修饰器1
55 0
前端学习案例1:ES6中的修饰器1
|
前端开发
前端学习案例2:ES6中的修饰器2
前端学习案例2:ES6中的修饰器2
55 0
前端学习案例2:ES6中的修饰器2
|
前端开发
前端学习案例4:ES6中的修饰器4
前端学习案例4:ES6中的修饰器4
47 0
前端学习案例4:ES6中的修饰器4
|
程序员 Python
装饰器property用法及使用它重构代码时的应用实例
&emsp;&emsp;我们知道装饰器可以将所需要的函数作为对象返回给需要用此函数处理的对象。而property装饰器则是将一个函数或者方法成为一个属性以供使用。@property这种语法糖形式简化了装饰器的使用。 ### 二、引导 &emsp;&emsp;在面向对象类型的语言中访问修改类中的属性时通常会自己写set或者get函数,对输出结果进行修饰或者对输入进行合法化检查。然而python可以提供一种优美的更直观的方法就是使用装饰器@property。
85 0
|
开发者 Python
装饰器的基本使用|学习笔记
快速学习装饰器的基本使用
74 0
|
开发者 Python
装饰器的高级使用|学习笔记
快速学习装饰器的高级使用
44 0