0

使用该itertools.chain方法展平列表时,例如:

list(itertools.chain(*zip(itr1,itr2)))

例如,是否可以用 None 填充较短的迭代itertools.imap?所以我不会结束:

In [1]: a = [1]
In [2]: b=[]

In [3]: list(itertools.chain(*zip(a,b))) 
Out[3]: []
4

1 回答 1

4

使用itertools.izip_longest,将默认值传递给fillvalue参数。

演示:

In [1]: from itertools import chain, izip_longest

In [2]: a = [1]

In [3]: b = []

In [5]: list(chain(*izip_longest(a, b, fillvalue='foo')))
Out[5]: [1, 'foo']

fillvalue默认值为None

于 2013-11-06T12:36:12.923 回答