用法:
itertools.zip_longest(*iterables, fillvalue=None)
创建一个迭代器,聚合来自每个可迭代对象的元素。如果可迭代的长度不均匀,则缺失值为 filled-in 和
fillvalue
。迭代一直持续到最长的可迭代对象用完为止。大致相当于:def zip_longest(*args, fillvalue=None): # zip_longest('ABCD', 'xy', fillvalue='-') --> Ax By C- D- iterators = [iter(it) for it in args] num_active = len(iterators) if not num_active: return while True: values = [] for i, it in enumerate(iterators): try: value = next(it) except StopIteration: num_active -= 1 if not num_active: return iterators[i] = repeat(fillvalue) value = fillvalue values.append(value) yield tuple(values)
如果其中一个可迭代对象可能是无限的,那么
zip_longest()
函数应该用一些限制调用次数的东西来包装(例如islice()
或takewhile()
)。如果未指定,fillvalue
默认为None
。
相关用法
- Python itertools.takewhile用法及代码示例
- Python itertools.compress用法及代码示例
- Python itertools.dropwhile用法及代码示例
- Python itertools.repeat用法及代码示例
- Python itertools.combinations_with_replacement用法及代码示例
- Python itertools.groupby()用法及代码示例
- Python itertools.repeat()用法及代码示例
- Python itertools.count用法及代码示例
- Python itertools.starmap用法及代码示例
- Python itertools.filterfalse用法及代码示例
- Python itertools.chain.from_iterable用法及代码示例
- Python itertools.groupby用法及代码示例
- Python itertools.accumulate用法及代码示例
- Python itertools.tee用法及代码示例
- Python itertools.combinations用法及代码示例
- Python itertools.permutations用法及代码示例
- Python itertools.product用法及代码示例
- Python itertools.chain用法及代码示例
- Python itertools.cycle用法及代码示例
- Python itertools.islice用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 itertools.zip_longest。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。