slots属性限制

class Admin:
#限制要添加的实例属性
#节约内存资源
slots = (‘name’,‘pwd’)
def str(self):
return ‘{}…{}’.format(self.name,self.pwd)
pass
r=Admin()
r.name=‘root’
r.pwd=‘pwd’

r.age=22 print(r.dict)#所有可以用的属性都在这果存储 不足的地方就是点用的内存空间太

##在定义了slots变量之后student类的实例已经不能随意创建不在 slots_ 定义的属性了
##同时还可以看到实例当中也不在有__ dict__

print®

#在继承关系当中的使用slots.
#子类未声明__slots__ 时,那么是不会继承父类的__ slots__ 此时子类是可以随意的属性赋值的
#子类声明了slots时,继承父类的slots
#也就是子类_slots_的范围 是为其自身+父类的slots

class User(Admin):
slots = (‘age’)
pass
u=User()
u.age=22
print(u.age)

上一篇:初识pwd和ls命令


下一篇:第一个Mybatis程序