📜  Python – Itertools.zip_longest()

📅  最后修改于: 2022-05-13 01:54:53.362000             🧑  作者: Mango

Python – Itertools.zip_longest()

Python 的 Itertool 是一个模块,它提供了在迭代器上工作以生成复杂迭代器的各种函数。该模块可作为一种快速、高效的内存工具,可单独使用或组合使用以形成迭代器代数。

Python中的迭代器是一个可以像list、tuple、str序列数据类型一样进行迭代的对象。

注意:更多信息请参考Python Itertools

Itertools.zip_longest()

该迭代器属于终止迭代器的类别。它按顺序交替打印可迭代的值。如果其中一个可迭代对象被完全打印,则剩余的值将由分配给fillvalue参数的值填充。

句法:

zip_longest( iterable1, iterable2, fillval)

示例 1:

# Python code to demonstrate the working of   
# zip_longest()  
      
    
import itertools  
      
# using zip_longest() to combine two iterables.  
print ("The combined values of iterables is  : ")  
print (*(itertools.zip_longest('GesoGes', 'ekfrek', fillvalue ='_' )))  

输出:

The combined values of iterables is  : 
('G', 'e') ('e', 'k') ('s', 'f') ('o', 'r') ('G', 'e') ('e', 'k') ('s', '_')

示例 2:

from itertools import zip_longest
  
  
x =[1, 2, 3, 4, 5, 6, 7]
y =[8, 9, 10]
z = list(zip_longest(x, y))
print(z)

输出:

[(1, 8), (2, 9), (3, 10), (4, None), (5, None), (6, None), (7, None)]