Python基础(七) python自带的三个装饰器
2017-11-03 13:49 _天枢 阅读(1253) 评论(0) 编辑 收藏 举报说到装饰器,就不得不说python自带的三个装饰器:
1、@property 将某函数,做为属性使用
@property 修饰,就是将方法,变成一个属性来使用。
class A(): @property def pfunc(self): return self.value @pfunc.setter def pfunc(self,value): self.value = value @property def pfunc1(self): print('this is property') if __name__=="__main__": A.pfunc = 9 print A.pfunc A.pfunc1
2、@classmethod 修饰类的方式
带修饰类方法:cls做为方法的第一个参数,隐式的将类做为对象,传递给方法,调用时无须实例化。
普通函数方法:self做为第一个参数,隐式的将类实例传递给方法,调用方法时,类必须实例化。
class A(): def func(self,x,y): return x * y @classmethod def cfunc(cls,x,y): return x * y
if __name__=="__main__": print A().func(5,5) print A.cfunc(4,5)
3、@staticmethod 修饰类的方式
1)是把函数嵌入到类中的一种方式,函数就属于类,同时表明函数不需要访问这个类
2)使用修饰服,修饰方法,不需要实例化
class A(): def func(self,x,y): return x * y @staticmethod def sfunc(x,y): return x * y if __name__=="__main__": print A.sfunc(6,5)
Linux and python学习交流1,2群已满.
Linux and python学习交流3群新开,欢迎加入,一起学习.qq 3群:563227894
不前进,不倒退,停止的状态是没有的.
一起进步,与君共勉,
作 者:
天枢
出 处:
http://www.cnblogs.com/yhleng/
关于作者:专注于软件自动化测试领域。如有问题或建议,请多多赐教!
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者
直接私信我
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角
【
推荐】
一下。您的鼓励是作者坚持原创和持续写作的最大动力!