我是一个比较新的python程序员,正在尝试修复ArrayList类中的contains方法。我想检查输入值是否真的包含在存储列表中
def __contains__(self, value):
"""Implements `val in self`. Returns true if value is found in this list."""
for num in iter(self):
if(num==value):
return True
else:
return False
有人能告诉我这个代码有什么问题吗?我用生成的列表范围(100)测试它,值为50,但它不会返回True
测试
num
是否等于self
中的第一个值。您应该只在整个循环结束后return False
,并且您已经证明num
不等于列表中的任何内容,因为您还没有返回True
另外请注意,如果您只写
for num in self
,则iter
是隐含的。普通的Python列表([]
)本质上已经是JavaArrayList
相关问题 更多 >
编程相关推荐