使用子类化扩展python中的List数据类型

2024-10-01 17:38:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望扩展Python中的列表数据结构,以便它支持其他方法

在浏览了网上的资源之后,我发现子类化是一种可行的方法。我尝试了这个方法,在使用list()关键字初始化列表时,效果非常好

但当我尝试使用[]

初始化列表时,问题就出现了

下面是一个示例代码,用于解释问题:

class CustomList(list):

    def addOne(self):
        self.append(1)
        return self


__builtins__['list'] = CustomList

if __name__ == "__main__":
    x = list()
    x.addOne()

    y = []
    y.addOne()

变量x在这里工作得很好

但是当使用变量y调用addOne时,它抛出异常

Exception has occurred: AttributeError
'list' object has no attribute 'addOne'

请帮帮我,我怎样才能让它工作。提前谢谢


Tags: 方法代码self示例数据结构列表def关键字

热门问题