Python 类的高级属性(可选)

1、slots实例:限制类的实例有合法的属性集,只有__slots__属性列表中的属性才可能成为实例属性。

  对象的实例通常没有一个属性字典,可以在__slots__列表中包含一个属性字典__dict__,

  以达到属性字典的目的。

2、类特性:提供另一种方式,让新式类调用自定义方法,获取或设置实例属性

  特性是一种对象,赋值给类属性名称。特性的产生是以三种方法(获得,设置及删除运算的处理器)

  

class A:
    def getage(self):
        return 40
    def setage(self,value):
        print("setage %s"%value)
    age = property(getage,setage,None,None)
    

if __name__ == "__main__":
    a = A()
    print(a.age) 

以及通过文档字符串调用内置函数property。

posted @ 2018-11-07 16:10  SunQi  阅读(501)  评论(0编辑  收藏  举报