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'

'''

  

推荐阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。