python 中的類的slots
因?yàn)閜ython是動(dòng)態(tài)語(yǔ)言,它允許在程序運(yùn)行過(guò)程中給class實(shí)例綁定任何屬性和方法
如果我們需要限制某個(gè)類的實(shí)例只允許有指定的幾個(gè)屬性或者方法,可以使用 slots 這個(gè)特殊變量
class testA(object):
__slots__ = ("name", "age")
ta = testA()
ta.name = "me"
ta.male = "male" # 該語(yǔ)句會(huì)報(bào)錯(cuò)...
報(bào)錯(cuò)信息
Traceback (most recent call last):
File "d:\Learn-python\test.py", line 353, in <module>
stuYc.male = "male"
AttributeError: 'Student' object has no attribute 'male'