python中__slots__的作用

#-*- coding:utf-8 -*-

class People(object):
    #限制只有定义的属性才能动态添加
    #以元组的方式定义能给对象添加的属性,除此之外的属性都不能添加
    #对动态添加属性可以做出一些限制
    __slots__ = ('name', 'age', 'phone')

    def __init__(self,):
        super(People, self).__init__()
        #self.weight = weight 无法添加属性

p1 = People()
#动态添加属性
p1.name = '张三'
#p1.sex = ''
p1.age = 22

你可能感兴趣的:(python)