__slots__ 限制实例属性

python中 定义一个类 实例对象可以自定义属性

__slots__ 可以限制

__slots__ 用来限制 实例对象的属性

class Students(object):
    __slots__ = ['name','age']  限制实例对象的属性
    counts = 1  类属性

    def __init__(self):
        Students.counts += 1   没添加一个实例对象 counts加1
        self.age = 1

a = Students()
a.name = 'saber'  # name属性在 __slots__ 里 所以可以定义属性name并复制
print a.age,a.name
--->  1 saber
a.height = 12   # height属性不在 __slots__ 里 所以会报错
---> AttributeError: 'Students' object has no attribute 'height'
print a.height

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值