Python内置函数zip()的用法
zip()函数介绍:
zip()函数是Python的内置函数,将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的list(Python3为了节约内存,zip()返回的是zip对象,需要通过list()手动转换成列表)
如果zip()没有可迭代的元素,则它将返回一个空的迭代器,如果每个迭代器的元素个数不一致,则返回的列表长度与最短的一致。
zip()函数语法:
zip([iterable,...])
实例演示
1、zip()返回的是zip对象,可以通过list()转换成list查看,也可以通过dict()转换成字典查看
x = ['a','b','c','d'] y = [1,2,3,4] print(f'这是一个列表:{list(zip(x,y))}') print(f'这是一个字典:{dict(zip(x,y))}')
执行结果如图:
2、每个迭代器的元素个数不一致,则返回的列表长度与最短的一致。
a = ["a","b","c","d"] #4个元素 b = [1,2,3,4,5,6,7] #7个元素 print(f'迭代对象长度不一致:\n{list(zip(a,b))}')
执行结果如图:
3、zip()可以用for循环并行迭代
a = [1,2,3,4,5] b = [5,4,3,2,6] c = zip(a,b) for a, b in c: print(a,"*",b,"=",a*b)
执行结果如图:
4、与 zip 相反,zip(*) 可理解为解压,返回二维矩阵式
a = [1,2,3,4,5] b = ["d","b","e","r"] c = zip(*(zip(a,b))) print(list(c))
执行结果如图: