【发布时间】:2020-04-18 19:01:21
【问题描述】:
我有一个列表派生类,并希望使用列表推导来分配其内容 这是示例代码:
class MyList(list):
def __init__(self, some_data):
self = [Foo(x) for x in some_data]
def customFilter(self):
self = [x for x in self if x.Selected]
当然这不起作用,因为对 self 的赋值只是创建了一个局部变量。 有没有不使用for循环的pythonic方法来实现这一点?
【问题讨论】:
-
为什么需要从
list派生? -
主要原因是添加一些额外的方法,即扩展列表功能
-
推导的目的肯定是为了复用?
-
我在代码中添加了自定义方法来说明为什么我从列表中派生
-
@JuliusG 你在重新定义自我吗?我很困惑。
标签: python constructor list-comprehension derived-class