抱歉,如果我不小心重复了一个问题,我仍然是 Python 的新手。
我正在开展一个学校项目,该项目要求我们使用图形搜索来解决一个经典谜语。我用 Python 写作是因为它是我开始学习它的一个很好的借口,但是我遇到了一些对我来说很奇怪的问题。
对于一个部分,我想循环浏览已探索节点的列表,并查看另一个节点是否与已探索节点列表中的任何节点相同。如果尚未探索,则它可能是图中要探索的下一个节点。
我发现的问题在于我创建了一个 for 循环来搜索已探索列表中的每个值。这是我写的:
def validate(self, testnode, explored):
if((testnode.wolf == testnode.sheep != testnode.farmer) or (testnode.sheep == testnode.cabbage != testnode.farmer)):
#return failure
return false
for i < len(explored):
if testnode == explored[i]:
#return failure
return false
else: return true
这是我的错误
File "AI_Lab1_BFS.py", line 54
for i < len(explored):
^
SyntaxError: invalid syntax
我在 SO 上阅读了 Python 用户的一些其他问题,其中问题是比较错误的类型,例如比较 int 和 float。我不认为这是我的问题,因为 len(explored) 应该是一个 int,对吧?这就是我所看到的,尽管也许我误解/假设了一些事情。如果您能提供任何帮助,我将不胜感激!
感谢大家的快速回复。推荐的更改肯定有效。