我希望这个课程像列表一样.它的数据位于self.data属性中.如果我有一个实例,pp = population,定义__getitem__是什么意思我可以引用pp而不是pp.data?或者它的定义__repr__是什么呢?从列表而不是对象派生这个类会为我提供'pop'.现在我需要实现'pop'方法.谢谢
class population (object):
def __init__ (self):
self.data = []
def append(self, item):
self.data.append(item)
def extend(self, item):
self.data.extend(item)
def sort(self):
self.data.sort(cmp=fitnesscompare)
def __getitem__(self, index): return self.data[index]
def __setitem__(self, index, item): self.data[index] = item
def __len__(self): return len(self.data)
def __repr__(self): return repr(self.data)
def copy(self):
return copy.deepcopy(self)
Run Code Online (Sandbox Code Playgroud)
为什么不扩展列表类?然后你就拥有了所有内置的功能.
class population(list):
# custom methods here
Run Code Online (Sandbox Code Playgroud)
请记住,而不是引用self.data列表,只需参考self.
| 归档时间: |
|
| 查看次数: |
957 次 |
| 最近记录: |