-2
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,2)在(1,1)和(1,3)之後到達(1,1)和(1)之後,2)如何檢測元組列表的錯誤
我排序的錯誤(l1)給出[(1,3),(1,2),(1,1)] 這是錯誤的,因爲這應該給[(1,1), (1,2),(1,3)],這意味着不應該提高錯誤,而是提高錯誤率。
l1的每個元素都是通過另一個類的幫助形成的,這可能是這個排序函數不起作用的原因。什麼是可能的解決方案?
無法重現 - 這對我不會產生錯誤。你是什麼意思「l1的每個元素是由另一個班級的幫助組成的」?上面的代碼是否會爲您提出異常或者是否有其他代碼存在問題? –
你應該發佈相關的代碼。這個問題似乎並不像現在這樣有意義;排序的工作原理與你描述的一樣,應該和'l1 ==排序(l1)'。 –
我已經發布了代碼 – smazon09