python3之类的 __slots__ 属性

1. 做用
bash

  1. 限定一个类建立的实例只能有固定的实例属性(实例变量),不容许对象添加列表之外的实例属性ide

  2. 防止用户因错写属性名称而发生程序错误spa


2. 说明对象

  1. __slots__ 属性是一个列表,列表的值是字符串字符串

  2. 含有__slots__属性的类所建立的实例对象没有__dict__属性,即此实例不用字典来存储属性it



例如:class

class Students:变量

   __slots__ = ["name","age","score"]程序

   def __init__(self,n,a,s):im

       self.name,self.age,self.score= n,a,s

s1 = Students("calabash","23","90")

s1.speed = "30"        # 添加一个其余的属性,会报错告诉你对象没有这个属性,必须添加列表内的属性

相关文章
相关标签/搜索