如何覆盖list(object)
,其中object
是由类定义的对象。你可以做类似的事情
class foo:
def __list__(self):
return [None] # In my real code I want it to return a object
如果有人找到了我要寻找的答案的问题,这也会有所帮助。
答案 0 :(得分:1)
您可以定义__iter__
方法以使对象可迭代。 list
然后可以基于结果迭代器创建结果。您还可以使用yield
生成器语法:
class Foo:
def __iter__(self):
yield None
print(list(Foo())) # prints [None]