理想情況下,我想擴展一個PIL圖像類的實例以包含一些自定義方法;但圖片不支持這個,所以我需要改變一下。代表團似乎是最傳統的選擇,但在我偶然發現python的這一方面之前,我曾經想過用一個屬性作爲PIL Image類的實例來創建我的自定義類。我還沒有在其他任何地方看到過這種情況,但這與代表團的情況基本相同嗎?我可以將一個類的實例作爲另一個屬性的對象嗎
import Image
MyImageClass():
def __init__(self, filepath):
self.attrA = ...
self.attrB = ...
self.attrc = ...
self.img = Image.open(filepath)
def method_A(self):
...
def method_B(self):
im = MyImageClass('/path/to/png')
im.self.img.thumbnail((100,100))
這是非常基本的OO編程 - 查找存儲在屬性中的對象示例的「has-a」關係。 (另外,我很確定'im.self.img'應該是'im.img' - 我在第一個版本中得到一個AttributeError) – Izkata 2012-01-06 22:23:16