python的zip函数

zip()是python的一个内置函数,作用是将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表,如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。

利用 * 号操作符,可以将元组解压为列表。

python2:

>>> a = [1,2,3]

>>> b = [4,5,6]

>>> c = [4,5,6,7,8]

>>> zip(a,c)

[(1, 4), (2, 5), (3, 6)]

>>> zip(a,b)

[(1, 4), (2, 5), (3, 6)]

>>> zipped = zip(a,b)

>>> zipped

[(1, 4), (2, 5), (3, 6)]

>>> zip(*zipped)

[(1, 2, 3), (4, 5, 6)]

>>>

python3:zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。如需展示列表,需手动 list() 转换。

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [1,2,3,4,5,6]
>>> zip(a,c)
<zip object at 0x000001FAFE530148>
>>> list(zip(a,c))
[(1, 1), (2, 2), (3, 3)]
>>>

文章参考:https://www.runoob.com/python/python-func-zip.html

***************不积跬步无以至千里。