zip函数作用:
将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。
看例子:
>>>a = [1,2,3] >>>b = [4,5,6] >>>zipped = zip(a,b) # 返回一个对象 zipped <zip object at 0x103abc288> #输出的结果
这是在 python3 的版本下运行,此时需要用函数 list ( )( 即 list ( zipped ))来转换输出列表,但在 python2 中不用。
两者输出如下:
>>>[(1, 4), (2, 5), (3, 6)]
如果把上面看成打包,那下面这个就是摊开包( 打散 )。
引入操作符号 * ,可将上面的元组解压为列表:
>>>a = [1,2,3]
>>>b = [4,5,6]
>>>zipped = zip(a , b)
list(zip(*zipped)) # python 3 // python 2用zip(*zipped)即可
[(1,2,3),(4,5,6)] # 结果输出