0

我有一本字典,其中的键是 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,因为第一个和第五个在第 6 个元素中的值不同于 100。当然,我可以在遍历所有键时单独比较每个元素,但我想也许有更好的方法。关于如何在 Python 中做到这一点的任何想法?

谢谢

4

2 回答 2

0

你可以做一个列表理解:

matched = [x for x in tuples if x[:6] == (100,100,100,100,100,100)]
于 2012-09-09T07:37:46.197 回答
0

像这样的东西应该工作:

matched = [x for x in dict.keys if len(set(x[:6])) == 1]
于 2012-09-09T07:42:49.367 回答