python zip函数小结

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

>>>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)]
>>> zip(*zipped)          # 与 zip 相反,可理解为解压,返回二维矩阵式
[(1, 2, 3), (4, 5, 6)]

如果传的是这样,数组里放的是字符串,将拆分字符串

>>> s=[‘12a‘,‘123‘,‘234‘]
>>> zip(*s)
[(‘1‘, ‘1‘, ‘2‘), (‘2‘, ‘2‘, ‘3‘), (‘a‘, ‘3‘, ‘4‘)]

单个字符串:

>>> s=[‘1‘,‘1‘,‘2‘]
  >>> zip(*s)
  [(‘1‘, ‘1‘, ‘2‘)]

下面这样会出错

>>> l=[111,12,13]
>>> zip(*l)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: zip argument #1 must support iteration

原文地址:https://www.cnblogs.com/facexiaoxi/p/8670910.html

时间: 2024-11-05 11:55:29

python zip函数小结的相关文章

python zip函数

zip函数将名/值列表链接到一起 In [1]: names = ['name', 'age', 'pay', 'job'] In [2]: values = ['Sue Jones', 45, 40000, 'hdw'] In [3]: a = zip(names, values) In [4]: a Out[4]: [('name', 'Sue Jones'), ('age', 45), ('pay', 40000), ('job', 'hdw')]

python zip()函数转置表,操作列

>>>zip([1,2,3],[4,5,6]) [(1,4),(2,5),(4,6)] zip()函数,每个输入的第N个元素配对在一起,返回包含数个元组的列表.要求:输入的必须是可迭代的对象(列表.元组.字符串) zip(*) 将所有输入的对象行转置为列. >>>data=[[1,2,3],[4,5,6]] >>>zip(*data) [(1,4),(2,5),(3,6)] 如要在表最后插入一列 table=zip(*table) table.appe

python zip()函数用法

zip() --内建函数 zip([iterable, ...]) 它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表). 若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同: 与dict() 连用,可完成list组合成字典: 注:python3目前zip函数print输出不能正常显示,显示如:<zip object at 0x0000000002598548> 用法示例: 读者看看下面的例子,对

python zip函数介绍

首先用help(zip)来看一下帮助文档: 意思是说它返回的是一个元素都为tuple的list,第一个元素tuple由原先的序列1即seq1[0],序列2seq2[0],....组成,第二个元素tuple由seq1[1],seq2[0]....组成,以此类推... 举例说明:1.这是比较正常的: >>> a,b=(1,2,3),(4,5,6) >>> zip(a,b) [(1, 4), (2, 5), (3, 6)] (1,4)由a[0],b[0]组成,(2,5)由a[

Python zip() 函数

参考链接:https://www.cnblogs.com/wushuaishuai/p/7766470.html 原文地址:https://www.cnblogs.com/thebreakofdawn/p/8886155.html

zip函数-Python 3

zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表. zip函数在获取数据后,生成字典(dict)时比较好用. for examples: 1 # Code based on Python 3.x 2 # _*_ coding: utf-8 _*_ 3 # __Author: "LEMON" 4 5 pList = [('li', 'LY', 80), ('zeng', 'ZW', 90), ('dudu', 'LR', 98)] 6 names = [] 7

python(29)强大的zip函数

zip函数:它是python的内建函数,(与序列有关的内建函数有:sorted().reversed().enumerate().zip()),其中sorted()和zip()返回一个序列(列表)对象,reversed().enumerate()返回一个迭代器(类似序列) 代码一: >>> name = ("lilei","lihua","zhang") >>> age = ("21",&q

Python 中zip()函数的用法

1. 定义: zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表). 若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同.利用*号操作符,可以将list unzip(解压). 2. 常见用法: A. 使用zip()函数来可以把列表合并,并创建一个元组对的列表 需要注意的是:在python 3.0中zip()是可迭代对象,使用时必须将其包含在一个list中,方便

Effective Python 小笔记之 zip 函数

环境:Python 3.5.1 CentOS 7 zip函数可以同时遍历两个迭代器. 在编写Python代码时,通常要面对很多列表,而这些列表中的对象,可能是相互关联的.如下例:     names = ['Cecilia', 'Lily', 'Maria']     length = [len(word) for word in names] 对于上例中的源列表和派生列表,相同索引处有关联关系,以此再引申出一个例子:     longest_name = None     max_length