こんにちは、python の itertools の Grouper 関数を使用して、sqlite のパフォーマンスのために select where in(idlist) クエリの大きなチャンクをカットしています。問題は、リストがはるかに小さい場合でも、グルーパーがチャンクサイズのスペース全体を埋めるため、最適化する前にループと比較を追加する必要がありました。
# 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))
このループと比較なしでこれを行う方法が必要だと思います。