python类对象属性封装的相关问题求助,python问题求助,在类中声明slots后,
python类对象属性封装的相关问题求助,python问题求助,在类中声明slots后,
在类中声明slots后,有要在类中控制对象类型的定义,如何来实现这个功能?
比如:
class T(object): __slots__=('a','b') a=TypeObject() b=TypeObject() def __init__(self,a,b): self.a=a self.b=bTypeObject(object): def __init__(self,): self.value=0 def __set__(self,instance,value): pass def __get__(self,instance,owner): pass
我在这里想控制a,b的对象类型,但是我在定义TypeObject类的时候发现声明了slots并不能够很好的控制类,由于数据量很大,slots是为了解决内存和性能方面的问题。
这样类中的对象类型就变成了tuple类型,如何来实现这样的对象数据封装?
应该怎么定义TypeObject类?
这里就是我想控制a,和b的类型,比如说定义成int,能不能为空,default等。
我应该如何实现TypeObject对象类型,还是分别在每个类中都封装成@property进行控制。
用__get__,__set__中,定义了__slots__并不能控制instance添加新的属性了,类中的__dict__属性控制会变成tuple。
可以定义@propety 实现属性对象的封装。这样会造成代码的臃肿。
不知道能不能定义元类来实现。
编橙之家文章,
相关内容
- 求大神看下这个python 类的使用模式有什么问题,大神
- Python如何将set对象存入redis后并将其转化为json格式,
- 请问Python2.7 Ubuntu14.10 pip1.5.6提示readline()是什么错误,
- python数据库操作数据类型转换问题,python数据类型,数据
- 求大神帮看下python代码中type作用是什么,pythontype,imp
- Python try except源码练习中e代表什么?,pythonexcept,try:
- python Requests层参数和会话层参数是什么?,pythonrequests
- pyinstaller打包exe在别非windows平台上的的电脑运行不了,
- python有相应模块可以持续监测网络连通性吗,python连通
- Python处理书摘文件代码问题求大神帮忙,python书摘,从网
评论关闭