标签:img span 并且 one hang 原来 pre def logs
1 def outer(func): 2 #func =原来f1函数 3 def inner(): 4 print(‘hio‘) 5 print(‘hio‘) 6 print(‘hio‘) 7 print(‘hio‘) 8 r=func() 9 print(‘1234214o‘) 10 print(‘1234214o‘) 11 print(‘1234214o‘) 12 print(‘1234214o‘) 13 14 return r 15 return inner 16 17 @outer 18 def f1(): 19 print(‘123‘) 20 21 22 #执行outer函数,并且将下面的函数名单做参数 23 #将outer 的返回值重新给f1=outer 的返回值 24 新f1函数=inner
装饰器再函数执行前后做修饰
=============================================================
装饰器简单调用
def outer(func): return ‘LH‘ @outer def index(): return True >>> print(index) #index变成了一个字符串
装饰器返回函数名
1 def outer(func): 2 3 def inner(): 4 print(‘123‘) 5 ret=func() 6 print(‘234‘) 7 return ret 8 return inner 9 10 11 @outer 12 def index(): 13 print(‘feichangfuzahn ‘) 14 return True 15 16 >>> index() 17 123 18 feichangfuzahn 19 234
只要装饰器被应用,那么函数就会被重新定义,定义为装饰器的内层函数。
装饰器含N个参数的函数
1 def outer(func): 2 def inner(*arg,**kwargs): 3 print(‘123‘) 4 r=func(*arg,**kwargs) 5 print(‘457‘) 6 return r 7 return inner 8 @outer 9 def index(x1,x2): 10 print(x1+x2) 11 return x1+x2
标签:img span 并且 one hang 原来 pre def logs
原文地址:http://www.cnblogs.com/Mjonj/p/7487376.html