如何检查一个对象是否在另一个对象(由我的类定义)中



如何检查一个对象是否在另一个对象中?假设我定义了以下内容:

class Container:
def __init__(self):
self.a = ['x','y','z']

我希望能够进行以下工作:

'x' in Container()  # True

我的尝试/猜测是,中的有某种类型的dunder方法:

class Container:
def __init__(self):
self.a = ['x','y','z']
def __in__(self, item):
return item in self.a

在这种情况下,中的运算符依赖于可迭代的对象。因此,解决方案是为__iter_定义dunder方法,如下所示:

def __iter__(self, item):
return iter(self.a)

最终产品为:

class Container:
def __init__(self):
self.a = ['x','y','z']
def __iter__(self, item):
return iter(self.a)

相关内容

最新更新