1. 定义:

        zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。

        若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压)。

2. 常见用法:

  A. 使用zip()函数来可以把列表合并,并创建一个元组对的列表

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

 如图:     

zip 存储 python python里面zip_迭代

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

     如图:   

zip 存储 python python里面zip_迭代_02

C. 搭配for循环,支持并行迭代

   如图:          

zip 存储 python python里面zip_zip 存储 python_03

  D. zip() 和 * 操作符一起操作可以用来 unzip 一个列表:

   如图:    

zip 存储 python python里面zip_操作符_04

 

    注:在函数调用中使用*list/tuple的方式表示将list/tuple分开,作为位置参数传递给对应函数(前提是对应函数支持不定个数的位置参数)

  E:二维矩阵变换(矩阵的行列互换) 

    zip函数: 这种方法速度更快但也更难以理解,将list看成tuple解压,恰好得到我们“行列互换”的效果,再通过对每个元素应用list()函数,将tuple转换为list

      

zip 存储 python python里面zip_元组_05

        F:以指定概率获取元素: