2012-09-09 19 views
0

我有一個字典,其中的鍵是n元素的元組。假設我只想找到n-1元素匹配的元組,而另一個元素可以是任何值。例如,我想第6元素被設置爲100,和第7可以是任何東西,我有這些元組的鍵:使用正則表達式比較元組? Python

1. (100,100,100,100,100,45,54) 
2. (100,100,100,100,100,100,54) 
3. (100,100,100,100,100,100,54) 
4. (100,100,100,100,100,100,54) 
5. (100,100,100,100,100,23,54) 

然後,我只需要2-4鍵,爲第一和第五個元素在第五個元素中保持不同於100的值。 當然,我可以逐個比較每個元素,但我想也許有更好的方法。 有關我如何在Python中完成任何想法?

感謝

+0

您在本詞典,這是不一般允許重複鍵。你能用實際例子糾正樣品嗎? –

回答

0

像這樣的東西應該工作:

matched = [x for x in dict.keys if len(set(x[:6])) == 1] 
0

你可以做一個列表理解:

matched = [x for x in tuples if x[:6] == (100,100,100,100,100,100)] 
+0

答案應該是一般化的。前6個元素可以相同但不是100,對嗎? – SexyBeast