一、zip()

zip在英文中有拉链的意思,我们由此可以形象的理解它的作用:将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。

语法: zip([iterable, ...])

示例一:

a = [1, 2, 3]
b = [4, 5, 6]
c = [7, 8, 9, 10, 11]zipped01 = zip(a, b)  # 打包为元组的列表
print('zipped01 = {0}; list(zipped01) = {1}'.format(zipped01, list(zipped01)))zipped02 = zip(a, c)  # 元素个数与最短的列表一致
print('zipped02 = {0}; list(zipped02) = {1}'.format(zipped02, list(zipped02)))

打印结果:

zipped01 = <zip object at 0x0000017B29B42648>; list(zipped01) = [(1, 4), (2, 5), (3, 6)]
zipped02 = <zip object at 0x0000017B29B4E5C8>; list(zipped02) = [(1, 7), (2, 8), (3, 9)]

二、zip(*)

创建一个聚合了来自每个可迭代对象中的元素的迭代器。

返回一个元组的迭代器,其中的第 iii 个元组包含来自每个参数序列或可迭代对象的第 iii 个元素。

  • 当所输入可迭代对象中最短的一个被耗尽时,迭代器将停止迭代。
  • 当只有一个可迭代对象参数时,它将返回一个单元组的迭代器。
  • 不带参数时,它将返回一个空迭代器。
d = [[1, 2, 3, 4, 5], [4, 5, 6, 7, 8, 9, 10]]
zipped03 = zip(*d)
print('zipped03 = {0}; list(zipped03) = {1}'.format(zipped03, list(zipped03)))

打印结果:

zipped03 = <zip object at 0x0000017B29B4EB88>; list(zipped03) = [(1, 4), (2, 5), (3, 6), (4, 7), (5, 8)]

python中的拉链函数:zip()、zip(*)相关推荐

  1. Python中的常用函数

    1.range()是一个函数 for i in range () 就是给i赋值: 比如 for i in range (1,3): 就是把1,2依次赋值给i range () 函数的使用是这样的: r ...

  2. python中的pop()函数和popleft()函数

    python中的pop()函数和popleft()函数 首先对于pop而言,它是用于stack中的: stack = [1, 2, 3, 4] print(stack) stack.append(6) ...

  3. python中add函数_如何使用python中的add函数?

    之前向大家介绍过python中的求和函数sum函数,numpy中的sum函数,对于数组可以指定维度进行相加.numpy中还有另一种求和运算方法,即add函数.add函数不仅作用于numpy中加法运算, ...

  4. python 2: 解决python中的plot函数的图例legend不能显示中文问题

    python 2: 解决python中的plot函数的图例legend不能显示中文问题 参考文章: (1)python 2: 解决python中的plot函数的图例legend不能显示中文问题 (2) ...

  5. python中list作为函数参数_在python中list作函数形参,防止被实参修改的实现方法

    0.摘要 我们将一个list传入函数后,函数内部对实参修改后,形参也会随之改变.本文将主要介绍这种错误的现象.原因和解决方法. 1.代码示例 def fun(inner_lst): inner_lst ...

  6. Python中的map()函数和reduce()函数的用法

    Python中的map()函数和reduce()函数的用法 这篇文章主要介绍了Python中的map()函数和reduce()函数的用法,代码基于Python2.x版本,需要的朋友可以参考下  

  7. python input与返回值-python中使用input()函数获取用户输入值方式

    我们编写程序最终目的还是来解决实际问题,所以必然会遇到输入输出的交互问题,python中提供了input函数用来获取用户的输入,我们可以用以下程序演示. user_gender = input(&qu ...

  8. Python中的sorted函数以及operator.itemgetter函数

    from:Python中的sorted函数以及operator.itemgetter函数 operator.itemgetter函数 operator模块提供的itemgetter函数用于获取对象的哪 ...

  9. python中怎么做分组问题_详解Python中的分组函数groupby和itertools)

    具体代码如下所示: from operator import itemgetter #itemgetter用来去dict中的key,省去了使用lambda函数 from itertools impor ...

最新文章

  1. 全球40起黑客攻击或与CIA有关 长角牛黑客组织打卡“上班”
  2. ASP.NET页面间传值方式--zt
  3. string 类型详解
  4. TCP/IP协议栈到底是内核态好还是用户态好?
  5. JS ajax请求参数格式( formData 、serialize)
  6. promise基础学习记录
  7. ICLR 2020丨V4D:视频级别表示学习的四维卷积神经网络
  8. 3-35Pytorch与visdom
  9. 新拟物素材|UI设计领域必掌握的要领!
  10. updatechecker.java_Mybatis中出现net.sf.ehcache.util.UpdateChecker.checkForUpdate问题解决方案...
  11. android开机图片格式,Android平台启动图使用.9.png图片
  12. ubuntu18.04 卸载Anaconda3
  13. 每日英语--Week8
  14. 终端应用变身文件 MD5/SHA1 校验工具
  15. 部署开源LWM2M服务器 leshan
  16. 微软学术搜索项目10个版本的历程 - 分析流程
  17. HNUST OJ 2205 队伍能力值
  18. mysql更新等差数列求和公式_shell学习笔记(6)
  19. 转:没有深度思考,所有努力都是扯淡
  20. 点成方案| 麦氏比浊仪用于微生物检验

热门文章

  1. 位时间(Tbit) 时间份额(TQ) CAN波特率
  2. 攒机:5000就搞定的绝对NB配置!
  3. CRM系统中,哪个品牌比较好?
  4. vue项目引入彩色iconfont图标
  5. linux menuconfig搜索,Linux make menuconfig查找并快速跳转指定驱动选项
  6. STM32驱动W5500动态分配IP
  7. 推荐一款强大的3D家装开源软件
  8. 做营销,也讲个望、闻、问、切!
  9. 360安全卫士、360杀毒与火绒
  10. 美国留学计算机专业就业怎么办,美国留学计算机专业就业前景