python 动态语言 __slots__
- python 是动态语言,就是说可以动态的创建属性,
- 别的语言不行,再创建类的时候已经规定好了
- 使用__slots__,注意要
用tuple定义同意绑定的属性名称,仅对当前类起作用,对继承的子类是不起作用的
class A(object): __slots__=('name','age') #1.限制属性 def __init__(self): pass if __name__ == "__main__": a = A() a.age=10 a.name="alam" a.sex='male' #如果没有slots是允许的 print(a.age) print(a.name) print(a.sex) #如果没有slots是允许的 ''' a.sex='male' AttributeError: 'A' object has no attribute 'sex' '''