python - 将类的实例分配给更大类的属性以创建嵌套点表示法
问题描述
有时我在较小的类中发现有用的拆分较大的类及其方法和属性,然后我访问将较小类的实例分配给较大类的属性。通过这种方式,我可以更好地组织类:当我使用控制台工作时,我可以使用嵌套的点表示法,而不是看到很多属性。例如,我有一个带有一些可以组合在一起的参数的仪器和一个链接到这些参数的方法。我会像这样构造这个类:
class params(object):
def __init__(self,P,I,D):
self.P = P
self.I = I
self.D = D
def compute_PID(self):
pass
class instrument(object):
def __init__(self,name,SN,P,I,D):
self.name = name
self.SN = SN
self.params = params(P,I,D)
def swith_on(self):
pass
myinstrument = instrument('blender','123',45,4,3)
myinstrument.params.P
这种deign模式有什么缺点吗?我想从内存的角度来看,它需要更多的内存,但是与字典相比,使用点表示法使事情变得更容易。
解决方案
推荐阅读
- android - Android Management API:如何防止设置任何密码?
- latex - 为什么 Latex 字体命令不能正常工作?
- python - sc2 python,AssertionError:不支持的像素密度
- python - 传递给 Django-Tables2 表类的请求对象
- keras - 在 Keras 中,如何成对连接不同输入大小的两个输入?
- reactjs - 类型错误:使用 React.createRef 时屏幕调整大小后无法读取 null 的属性“offsetHeight”
- matching - 如何匹配两个不同文本文件的两个不同列中的值?
- javascript - Ionic 4:如何在设备上保存来自 firebase 存储的离线模式的图像
- java - 杰克逊转换中无法识别的字段“类”
- javascript - 如何禁用 CSS 过渡,更新样式,然后使用 JavaScript 快速恢复过渡