有些類別的實例,是用來裝載資料,對於這樣的類別,我們稱為資料類別。表面上看來,這些類別只有一些欄位,只需要定義__init__方法,其他什麼都沒有,然而隨著需求增加,或許要定義物件描述(__str__、__repr__),可能要比較相等性或大小(__eq__、__lt__等),也許必須置入集合(hashable,也就是不可變動物件且具有__hash__)。
自行實作這類協定的問題,不單只是無趣、繁瑣的問題,若類別的欄位變更,相關的協定也須逐一檢視,做出相對應的修改,就維護而言,是個不小的負擔。
有欄位名稱的tuple
臉書留言
(這個頁面共進入 4 次, 今天進入 1 次)