2013-04-08 58 views
2

我有两个数组说x = [110, 10, 1000 ....]y = ['adas', 'asdasqe', 'ae1e' ....]查找最小的Python阵列

这两个数组的长度是相同的。我的问题是,或打印y的10个值,使得相应的值x是最大的10个。

在平均测试案例中,xy的长度为4000-5000。所以速度是关键。你能告诉我一种使用python的一些内置函数来做到这一点的方法,这样操作就尽可能快。

+2

严格地说,在蟒蛇这些名单不是数组;) – 2013-04-08 11:28:07

回答

7

如果你想从数千列表中的十大要素,你可以尝试heapq

import heapq 

heapq.nlargest(10, zip(x, y))