1

このコードでは、グルーパー関数は正常に動作しますが、関数を呼び出さずに実行すると。エラーがスローされます

TypeError: izip_longest argument #1 must support iteration

from itertools import *

def grouper(n, iterable, fillvalue=None):
    args = [iter(iterable)] * n
return izip_longest(fillvalue=fillvalue, *args)


x = [1,2,3]

args = [iter(x)] * 2
l = izip_longest(None , *args )
#l = grouper(2,x)
print [x for x in l]
4

1 に答える 1

3

すべての位置引数は、fillvalue ではなく iterable でなければなりません。キーワード引数として渡しfillvalueます:

it = izip_longest(*iterables, fillvalue=None)

もしそうfillvalueならNone; 省略できます:

it = izip_longest(*iterables)
于 2013-03-29T21:05:33.103 に答える