我想检查给定值是否存在于对象列表中(堆栈)。每个对象都包含一个我想检查的属性(状态)。Python值不在对象列表中
样品清单:
[<state.State instance at 0x02A64580>, <state.State instance at 0x02A646E8>, <state.State instance at 0x02A649B8>]
我都试过了,似乎并没有做到这一点:
for neighbor in neighbors:
if neighbor.state != any(s.state for s in stack):
stack.append(neighbor)
我怎样才能做到这一点?
'any()'返回一个'bool'。看来你期望它做别的事情? – roganjosh
它需要是“列表”吗?如果你把它当作一个字典,把'state'这个值作为一个关键字,那么这会更方便。 – yedpodtrzitko
'if all(neighbor.state!= s.state for s in stack):' – kindall