python中zip方法,python zip用法

python中zip方法,python zip用法,Python中zip()函数的简单用法举例

本文主要介绍Python中zip()函数的简单用法。通过示例代码进行了非常详细的介绍,对大家学习或使用Python有一定的参考价值。有需要的话一起学吧。

定义:zip([iterable,])

Zip()是Python的内置函数。它接受一系列迭代对象作为参数,将对象中对应的元素打包成元组(tuple),然后返回由这些元组组成的列表(list)。如果传入参数的长度不同,则返回列表的长度与参数中长度最短的对象相同。使用*操作符,您可以解压列表。请参见以下示例:

a=[1,2,3]

b=[4,5,6]

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

zipped=zip(a,b)

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

zip(a,c)

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

拉链(*拉链的)

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

对于这个不常用函数,这里有一些例子来说明它的用法:

*二维矩阵变换(矩阵行列互换)

例如,我们有一个由列表描述的二维矩阵。

a=[[1,2,3]、[4,5,6]、[7,8,9]]

通过python列表派生,我们也可以轻松完成这个任务。

print[[row[col]for row in a]for col in range(len(a[0])]

[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

另一种令人困惑的方法是使用zip函数:

a=[[1,2,3]、[4,5,6]、[7,8,9]]

zip(*a)

[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

地图(列表,zip(*a))

[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

Zip函数接受任意数量的序列作为参数,将所有序列按照相同的索引组合成一个元素,这是一个由所有序列组合而成的新元组序列。新序列的长度以参数中最短的序列为准。此外,(*)运算符与zip函数配合使用,可以实现与zip相反的功能,即将合并后的序列拆分成多个元组。

tuple的新序列

x=[1,2,3],y=['a ',' b ',' c']

zip(x,y)

[(1,' a '),(2,' b '),(3,' c')]

新序列的长度基于参数中最短的序列。

x=[1,2],y=['a ',' b ',' c']

zip(x,y)

[(1,' a '),(2,' b')]

(*)运算符通过与zip函数配合,可以实现与zip相反的功能,即将合并后的序列拆分成多个元组。

x=[1,2,3],y=['a ',' b ',' c']

zip(*zip(x,y))

[(1,2,3),(' a ',' b ',' c')]

总结

这就是本文的全部内容。希望这篇文章的内容对你的学习或工作有一定的参考价值。谢谢你的支持。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: