用法:
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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。