【发布时间】:2020-12-03 17:25:37
【问题描述】:
__contains__ 是如何工作的?例如,我有一个类MyClass 和一个名为a 的类的实例,当我写if val in a: 时,我基本上是在调用__contains__,根据我的理解,如果__contains__ 没有在类中实现,那么调用__iter__,它在__getitem__(在我的示例中在类中实现)返回的列表之间进行迭代,如果val 等于列表中的某个元素,则__contains__ 返回True。对吗?
编辑:我的代码中的__getitem__ 仅返回给定位置的列表元素,所以我不知道它如何与__iter__ 一起使用
【问题讨论】:
标签: python