由浅入深,走进Python装饰器-----第二篇:进阶--类装饰函数
2019-04-14 17:26
706 查看
**类装饰器** @类 函数
2.1 用类装饰器来扩展原函数
# 用类装饰器来扩展原函数, 通过对象函数化触发__call__方法,进行返回 class KuoZhan(): def __call__(self,f): return self.newfunc(f) def newfunc(self,f): def in_newfunc(): print("1") f() print("2") return in_newfunc @KuoZhan() #1. KuoZhan() ==> obj 2. @obj ==> obj( ) 3. func = obj( func) def func(): print("我是原函数") func() >>>1 >>>我是原函数 >>>2
2.2 用类装饰器来扩展原函数
# 直接调用类函数 class KuoZhan(): def newfunc(f): def in_newfunc(): print("1") f() print("2") return in_newfunc @KuoZhan.newfunc # 直接类调用 1. @KuoZhan.newfunc2 ==> KuoZhan.newfunc2() 2. func = KuoZhan.newfunc2(func) = in_newfunc(func) def func(): print("我是原函数") func() >>>1 >>>我是原函数 >>>2
2.3 类装饰类里的函数
待续....
相关文章推荐
- 由浅入深,走进Python装饰器-----第二篇:进阶1
- python装饰器的4中类型:函数装饰函数、函数装饰类、类装饰函数、类装饰类
- Python装饰器-专题笔记-学会装饰器,Python更进阶
- python进阶:闭包、map/reduce/filter函数、lambda函数、装饰器
- python之 装饰器(原函数有返回值,装饰器函数如何拿到原函数返回值?)
- python装饰器中@wraps作用--修复被装饰后的函数名等属性的改变
- PythonDay08(进阶)---函数式编程(二):匿名函数、装饰器详细介绍、偏函数
- 由浅入深了解python里面的函数,闭包,装饰器
- 洗礼灵魂,修炼python(30)--装饰器(2)—>装饰器总结+进阶使用
- python装饰器:有参数的装饰器、不定长参数的装饰器、装饰有返回值的函数、通用的装饰器
- python装饰器:有参数的装饰器、不定长参数的装饰器、装饰有返回值的函数、通用的装饰器
- python_装饰器二(对有/不定长参数函数的装饰)
- python用装饰器实现缓存函数执行结果
- python中函数总结之装饰器闭包详解
- Python进阶04 函数的参数对应
- python 嵌套函数、闭包装饰器、装饰器例子
- Python进阶07 函数对象
- Learning Python 012 函数式编程 2 返回函数 匿名函数 装饰器 偏函数
- python 对一个函数应用多个装饰器
- python 函数进阶与闭包