2015-12-09 44 views
1

我有一個基於訓練數據集的元組列表。比較元組列表的值,當前和下一個

empty = [(a time, a crime),(a time, a crime),(...,...).....] 

我想檢查,如果在當前的元組的當前時間等於在未來的元組的當前時間,打印時間和犯罪。

我以前有過這樣的情況,如果當前值和下一個值是相同的,它會打印列表中的所有項目,但是如果我想限制它在單獨的時間上進行過濾,我認爲這不會起作用。比整個列表值。不確定是否有任何事情可以用分割函數完成,或者如果將數據傳遞給元組列表是正確的方法。非常感謝任何幫助。

其中:

empty = ["a time, a crime", "a time, a crime"....] 


for next_obj in empty: 
    if next_obj[0] == cur_obj[0]: 
     print cur_obj 
    else: 
     pass 
    cur_obj = next_obj 

回答

1

你可能想這樣的:

crimes_and_times = [('a time', 'a crime'), ('b time', 'b crime'), ('b time', 'c crime')] 
for i in xrange(1, len(crimes_and_times)): 
    cur = crimes_and_times[i] 
    prev = crimes_and_times[i - 1] 
    if cur[0] == prev[0]: 
     print cur 

輸出:

('b time', 'c crime') 
+0

告訴你,我做的。非常好,非常感謝。 –

+1

我很高興我可以幫助:) –