l1 = [[(1,1), (1,2), (1,3)]]
for e in l1:
for i, c in enumerate(e):
n = re.search(r'(\d,\d)', c)
if n:
num = [int(y) for y in c.split(',')]
print "num is ", num
e[i] = Sequence_element(num[0], num[1])
if sorted(l1) != l1:
raise ValueError, 'l1 is not in sequence'
class Sequence_element(object):
def __init__(self, first_elem, second_elem):
self._first_elem = first_elem
self._second_elem = second_elem
def first_elem(self):
return self._first_elem
def second_elem(self):
return self._second_elem
此代码用于确保(1,1)在(1,1)和(1,3)之后到达(1,1)和(1,2)
我排序的错误(l1)给出[(1,3),(1,2),(1,1)] 这是错误的,因为这应该给[(1,1),(1,2),(1,3)]这意味着不应该引发错误而引发错误。
l1的每个元素都是由另一个类的帮助形成的,这可能是这个排序函数不起作用的原因。什么是可能的解决方案?
答案 0 :(得分:0)
我将(l1)输出排序为[(1,1),(1,2),(1,3)],并且排序(l1)等于l1。我没有收到任何错误。