<p>您好,我正在使用python的itertools中的Grouper函数来削减大量selectwherein(idlist)查询,以获得sqlite性能。问题是grouper会填满chunksize的整个空间,即使这个列表要小得多,所以我不得不在这之前添加一个循环和比较,现在我想优化一下。在</p>
<pre><code># input list shorter than grouper chunk size
input = (1,2,3,4,5)
grouper(10,input)
# desired output = (1,2,3,4,5)
# actual output = (1,2,3,4,5,None,None,None,None,None)
# current fix for this issue
list_chunks = tuple(tuple(n for n in t if n) for t in grouper(10, input))
</code></pre>
<p>我认为必须有一种方法来做到这一点,而不是这个循环和比较。在</p>
<h2>注意:使用Python2.5</h2>