Извините, если я случайно продублировал вопрос, я все еще новичок в Python.python меньше, чем ошибка сравнения int и длина массива
Я работаю над школьным проектом, который требует от нас решения классической загадки с помощью поиска графа. Я пишу на 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
Я прочитал некоторые другие проблемы с пользователями Python на SO, где проблема сравнивал неправильные типы, как сравнение в Int к поплавок. Я не думаю, что это моя проблема, хотя, поскольку len (explored) должен быть int, не так ли? Это то, что я видел, хотя, возможно, я неправильно понял/принял вещи. Если вы можете предложить любую помощь, я буду очень благодарен!
Спасибо всем за ваши быстрые ответы. Рекомендуемые изменения определенно сработали.
Кроме того, не следует использовать для/другое. Он очень редко используется и, вероятно, не делает того, что вы думаете. –