我想重用内置 list()
类型中的一些功能,因此创建了一个继承自它的新类。现在我想访问列表中的项目。但如何呢?
我可以创建一个类,其中包含一个内部列表,然后我可以对其进行处理;但我非常不想重写所有魔术函数来模仿列表行为。
class NamedList(list):
def __init__(self, name, *args, **kwargs):
self.name = name
super(NamedList, self).__init__(*args, **kwargs)
def tell_me(self):
print self.name
print 'all I contain is'
for item in ???: #what belongs here?
print item
最佳答案
list
的子类和其他内置可迭代类型是可迭代的。
只需使用self
:
def tell_me(self):
print self.name
print 'all I contain is'
for item in self:
print item
关于python:从内置类型列表继承,如何访问新类中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33916838/