2012-09-24 80 views
4

這與我今天不久前提出的問題有些相關。我正在走兩個列表如下:Python:爲兩個列表的交集找到相應的索引

inter = set(NNSRCfile['datetimenew']).intersection(catdate) 

我正在採取的兩個組件屬於兩個冗長的列表。是否有可能獲得相交值的索引? (原始列表的索引是)。

我不太確定從哪裏開始。

任何幫助,非常感謝!

回答

8

我想創建一個字典來保存原始指數:

ind_dict = dict((k,i) for i,k in enumerate(NNSRCfile['datetimenew'])) 

現在,構建集作爲前:

inter = set(ind_dict).intersection(catdate) 

現在,得到指數的列表:

indices = [ ind_dict[x] for x in inter ] 
+0

在第二行中,不應該將「values()」設置爲「keys()」?由於日期是作爲第一行中的鍵存儲的? –

+0

@KyleSimek - 是的,我相信你是對的。最終,你甚至可以象以前一樣設置(NNSRCfile ['datetimenew'])。intersection(catdate)'_exactly_。我不知道我在想什麼:-) – mgilson

相關問題