python:从内置类型列表继承,如何访问新类中的元素?

标签 python python-2.7 inheritance built-in

我想重用内置 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/

相关文章:

python - 测试 post API 接收状态代码 200 而不是 201

"empty lines"中的 Python 缩进

python - 从正态分布中进行拉丁超立方采样 (Python)

c++ - 我在理解继承和让多个类协同工作时遇到问题?

c# - 禁止覆盖派生类中的方法

c++ - 继承类的意外转换

python - Flask-WTForms RadioField 自定义验证器消息不起作用

python - 用获取和释放信号量方法替换关键字

html - 从格式错误的 pdf 表中抓取数据

java - 如何将java时区id转换为python可接受的id