标签:
python调用函数可以提供 key=value 代表这个参数的值,我们可以不用根据函数定义顺序来调用函数。。。。 (*a,**b) 可以作为装饰器提供不定参数。。。使装饰器和被装饰函数 耦合度大幅度降低 函数 def func(): return 1 ///返回 函数的名字 func.__name__ //////通过装饰器实现类的静态方法 class Class: @staticmethod def OK(): print "OK" Class.OK() /////不定参数装饰器 #encoding=utf-8 def deco(func): def _infunc(*args,**kvargs): print("before myfunc() called.") func(*args,**kvargs) print("after myfunc() called.") return _infunc @deco def MyFunc(a,b): print "a+b=",a+b @deco def MyFunc1(a,b,c): print "a+b+c=",a+b+c MyFunc(1,2) MyFunc1(b=1,a=100,c=8) ////装饰器带参数的 不定参数装饰器 #encoding=utf-8 def decco(arg): def _deco(func): def _infunc(*args,**kvargs): print("before myfunc() called. args:%s" % arg) func(*args,**kvargs) print("after myfunc() called.args:%s" % arg) return _infunc return _deco @decco("aaa") def MyFunc(a,b): print "a+b=",a+b @decco("bbb") def MyFunc1(a,b,c): print "a+b+c=",a+b+c MyFunc(1,2) MyFunc1(b=1,a=100,c=8)
标签:
原文地址:http://blog.csdn.net/yue7603835/article/details/44962505