__slots__属性

使用__slots__时,子类不受影响
class Person(object):
    __slots__ =  ("name","age")
    def __str__(self):
        return "姓名:%s,年龄:%d"%(self.name,self.age)
p = Person()
class man(Person):
    pass
m = man()
m.score = 78
print(m.score)

使用__slots__限制类添加的属性
class Person(object):
    __slots__ =  ("name","age")
    def __str__(self):
        return "姓名:%s,年龄:%d"%(self.name,self.age)
p = Person()
p.name  = "Xiaoming"
p.age = 15
print(p)
try:
    p.score = 78
except AttributeError :
    print(AttributeError)

2020-05-08

posted @ 2020-05-08 00:29  CodeYaSuo  阅读(115)  评论(0编辑  收藏  举报