【发布时间】:2022-07-04 23:40:04
【问题描述】:
我想在 Python 中继承 list 对象,并添加一个类似于 append 方法的方法。在下面的例子中我称之为append_
class MyList(list):
def append_(self, element):
new_list = list(self)
new_list.append(element)
self = self.__class__(new_list)
return self
这是一个非常简单的例子,但这是我的问题:假设我用一些列表实例化一个对象my_list,然后我尝试将一个额外的元素附加到my_list
my_list = MyList(list(range(5)))
my_list.append_(6) # returns [0,1,2,3,4,6]
# BUT
my_list # returns [0,1,2,3,4]
所以最后我什么也没附加。我既不明白出了什么问题,也不明白在哪里可以找到解决这个问题的帮助......
我正在使用 Python 3.9.12,如果有帮助的话...
【问题讨论】:
标签: python arrays list append subclass