【发布时间】:2014-06-04 19:53:18
【问题描述】:
我有一个名为 Image 的类
class Image(object):
def __init__(self,rgb_img):
self.img_time = time.time()
self.img_colr = rgb_img
我想稍后存储更多关于这个类的信息(图像关键点、灰度等),并且相信完全创建一个新类会更清楚。但我不知道最好的做法。这是我的猜测:
img = Image(rgb_img)
class DetailedImage(object):
def __init__(self, img, kp, grey):
self = img
self.kp = kp
self.grey = grey
不过,这个选项是隐含的。 img 参数必须是 Image 实例并不是很明显。
使用另一个类的实例创建新类的最佳做法是什么? (即,如果我有一个农民,他训练成为一名战士,我如何将信息从实例化的农民类传递给单独的战士类?)这甚至是一个好主意吗?
【问题讨论】:
-
你的方法可能没有达到你想要做的——见stackoverflow.com/questions/1216356/…
-
分配给自己的想法让我畏缩!如果必须继承,为什么不直接继承——使用组合。
-
@jb 想提交答案?这就是我问这个问题的确切原因。在实施/最佳实践方面需要帮助。
-
@PaulSeeb 给你!
标签: python class inheritance conventions