您的位置:首页 > 编程语言 > Python开发

python 动态语言 __slots__

2017-07-11 21:01 281 查看
  • 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'
'''

  

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: