【发布时间】:2018-03-04 09:30:30
【问题描述】:
我已经尝试过 sorted、value_sort、all(a, b...zip) 等,但我检查列表是否已排序的函数“is_solved”将不起作用。该函数应检查弹珠列表是否按升序排序。我已经评论了我尝试过但没有奏效的其他方法。非常感激任何的帮助。
def is_solved(self, list_of_marbles, i):
#returns true if the game is solved
if self.list_of_marbles[i] < self.list_of_marbles[i+1]:
#all(self.list_of_marbles[i] <= self.list_of_marbles[i+1] for i
#in range(len(self.list_of_marbles)-1))
#if self.is_solved(board2, i) == True:
#if self.list_of_marbles[i] < self.list_of_marbles[i+1]:
return True
else:
return False
【问题讨论】:
-
另外,
i方法中的is_solved是未定义的。 -
我已更新为“is_solved”。我收到一个我未定义的错误。我该如何解决这个问题?我尝试了帖子中的方法,“pythonic way to check if a list is sorted or not”,但也无法让它们工作。
-
为什么要在函数内部定义
i?你没有在那里定义它,也没有从你调用函数的地方传递它。天真的修复是def is_solved(self, list_of_marbles, i):和if self.is_solved(board2, i) == True:,但我无法判断算法是对还是错。 -
你能解释一下算法是怎么出错的吗?
标签: python list sorting undefined