我想用-s ... s中的元素遍历所有长度为n的列表/元组。目前我这样做:
for k in itertools.product(range(-s,s+1), repeat = n):
#process k and maybe print out the result
但是这对我没用,因为有大量的这样的元组,我的代码可能永远不会终止。我想首先从最有趣的开始。在这种情况下,迭代的顺序是:
怎么能这样做?
答案 0 :(得分:3)
这个怎么样:
<div class="p">
答案 1 :(得分:1)
所以你的代码要比列表更昂贵吗?
然后,您可以使用key
参数对这些列表的列表进行排序。你称之为列表的东西确实是元组,对吧?至少在我的python 2.7 itertools中。我会将它们转换为数组,因为我认为你不能使用abs。然后排序功能是:
lists.sort(key = lambda t: np.max(np.abs(np.array(t))))
这项工作能够做得足够快吗?