使用正则表达式比较元组?蟒蛇

时间:2012-09-09 07:17:08

标签: python dictionary tuples

我有一个字典,其中键是n个元素的元组。假设我只想找到n-1个元素匹配的元组,而另一个元素可以是任何值。例如,我希望第一个第6个元素设置为100,第7个元素可以是任何东西,我将这些元组作为键:

 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中实现它的任何想法?

由于

2 个答案:

答案 0 :(得分:0)

你可以做一个列表理解:

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

答案 1 :(得分:0)

这样的事情应该有效:

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