python中的zip

>>> a = zip([1,2,3],[34,35,36])
>>> print(a)
<zip object at 0x0394D0F8>
>>> a = [1,2,3]
>>> b=[4,5,6]
>>> zip(a,b)
<zip object at 0x0394D0F8>
>>> list(_)
[(1, 4), (2, 5), (3, 6)]
>>>

在python 3.xzip()是可迭代对象,使用时必须将其包含在一个list中,方便一次性显示出所有结果。

zip()参数可以接受任何类型的序列,同时也可以有两个以上的参数;当传入参数的长度不同时,zip能自动以最短序列长度为准进行截取,获得元组。

zip与dict的配合

>>> d=dict(zip([1,2,3],[4,5,6]))
>>> d
{1: 4, 2: 5, 3: 6}
>>> 

可以看成dict(list(zip([1,2,3],[4,5,6])))

搭配for循环,支持并行迭代操作方法

>>> l1 = [2,3,4]
>>> l2 = [4,5,6]
>>> for (x,y) in zip(l1,l2):
        print(x,y,'--',x*y)

        
2 4 -- 8
3 5 -- 15
4 6 -- 24
原文地址:https://www.cnblogs.com/MY0213/p/7834628.html