python 中zip()函数的使用
Posted 独赏孤舟蓑笠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 中zip()函数的使用相关的知识,希望对你有一定的参考价值。
-
zip(*iterables)函数的定义:
- zip()函数的对象Iterables,iterables可以有多个参数(元组,列表等可迭代对象)组成。通过zip()函数返回一组元组数据,每个元组中的第i个元素对应每个Iterables参数中的第i个元素。如果iterables的参数如果元素个数不同,则只返回元组的个数等于所有参数中元素最小的个数。
- 1、当iterables中元素相同时:
-
a=[1,2,3,4,5] b=(1,2,3,4,5) c="zhang" zz=list(zip(a,b,c))#注意使用zip()将a,b,c逐元素拼接后,得出的为zip类型的。需要用list或tuple转换一下才能显示出zz的结果 zz
输出结果
[(1, 1, ‘z‘), (2, 2, ‘h‘), (3, 3, ‘a‘), (4, 4, ‘n‘), (5, 5, ‘g‘)] - 2、当iterables中元素不相同时,组成的元组个数等于iterables中参数中元素最小的个数:
-
import numpy as np a=[1,2,3,4,5] b=(1,2,3) c="zhang" zz=list(zip(a,b,d)) zz
得出zz的元组中共3个元素,输入iterables中b的元素个数相同: [(1, 1, ‘z‘), (2, 2, ‘h‘), (3, 3, ‘a‘)]
3.当ietables中只有一个参数时:
-
import numpy as np a=(1,2,3,4) zz=list(zip(a)) zz
输出结果:[(1,), (2,), (3,), (4,)]4.zip()中zip(**iteables)的使用:zip(**iteables)可将得出的元组的每个元素分别取出
-
a=[1,2,3]
b=[4,5,6]
c=[7,8,9]
zz=zip(a,b,c)
x,y,z=zip(*zz)
print(x)
print(y)
print(z)输出结果:
(1, 2, 3)
(4, 5, 6)
(7, 8, 9)
以上是关于python 中zip()函数的使用的主要内容,如果未能解决你的问题,请参考以下文章
Python无须numpy,利用map函数与zip(*)函数对数组转置(转)