zip() 函数是 Python 内置函数之一,它可以将多个序列(列表、元组、字典、集合、字符串以及 range() 区间构成的列表)“压缩”成一个 zip 对象。所谓“压缩”,其实就是将这些序列中对应位置的元素重新组合,生成一个个新的元组。

和 Python 3.x 版本不同,Python 2.x 版本中的 zip() 函数会直接返回列表,而不是返回 zip 对象。但是,返回的列表或者 zip 对象,其包含的元素(都是元组)是相同的。

zip() 函数的语法格式为:

zip(iterable, ...)

其中 iterable,... 表示多个列表、元组、字典、集合、字符串,甚至还可以为 range() 区间。

下面程序演示了 zip() 函数的基本用法:

my_list = [11,12,13]

my_tuple= (21,22,23)print([x for x inzip(my_list,my_tuple)])

my_dic= {31:2,32:4,33:5}

my_set= {41,42,43,44}print([x for x inzip(my_dic)])

my_pychar= "python"my_shechar= "shell"

print([x for x in zip(my_pychar,my_shechar)])

程序执行结果为:

[(11, 21), (12, 22), (13, 23)]

[(31,), (32,), (33,)]

[('p', 's'), ('y', 'h'), ('t', 'e'), ('h', 'l'), ('o', 'l')]

如果读者分析以上的程序和相应的输出结果不难发现,在使用 zip() 函数“压缩”多个序列时,它会分别取各序列中第 1 个元素、第 2 个元素、... 第 n 个元素,各自组成新的元组。需要注意的是,当多个序列中元素个数不一致时,会以最短的序列为准进行压缩。

另外,对于 zip() 函数返回的 zip 对象,既可以像上面程序那样,通过遍历提取其存储的元组,也可以向下面程序这样,通过调用 list() 函数将 zip() 对象强制转换成列表:

my_list = [11,12,13]

my_tuple= (21,22,23)print(list(zip(my_list,my_tuple)))

程序执行结果为:

[(11, 21), (12, 22), (13, 23)]

结尾福利

本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

python zip函数转制_Python zip函数及用法相关推荐

  1. python zip函数转制_python 利用zip()函数进行矩阵转置

    声明:本文参考了博客文章https://www.cnblogs.com/anpengapple/p/5427367.html,对其中的代码进行了微调 本文介绍如何利用python的内置函数zip(), ...

  2. python quit函数作用_Python常用函数学习笔记

    Python函数很多,常用的函数不同的场景侧重不同,学而时习之,不亦乐乎? abs # 求绝对值 Capitilize函数: # 有列表 li = ['aB', 'egon', 'smith', 'p ...

  3. python 字符串输入时间_Python input()函数:获取用户输入的字符串

    input() 函数用于向用户生成一条提示,然后获取用户输入的内容.由于 input() 函数总会将用户输入的内容放入字符串中,因此用户可以输入任何内容,input() 函数总是返回一个字符串. 例如 ...

  4. python内置函数调用_Python中函数的基本定义与调用及内置函数详解

    前言 函数function是python编程核心内容之一,也是比较重要的一块.首先我们要了解Python函数的基本定义: 函数是什么? 函数是可以实现一些特定功能的小方法或是小程序.在Python中有 ...

  5. python自定义函数参数_python自定义函数的参数之四种表现形式

    (1)def a(x,y):print x,y 这是最常见的定义方式,调用该函数,a(1,2)则x取1,y取2,形参与实参相对应,如果a(1)或者a(1,2,3)则会报错 (2)def a(x,y=3 ...

  6. python中函数定义_Python中函数的定义与使用

    原博文 2020-02-27 16:46 − 一.函数基本定义 定义函数的目的是为了让一段代码可以被重复使用 函数定义的语法: def 函数名([参数,参数.....]): 函数主体代码(多行代码) ...

  7. python使用复合语句def创建函数对象_Python 纯函数

    Python 纯函数,函数式编程简洁明了,因为函数可以用作其他函数的参数或者返回值,后续会给出很多这样的例子. 要做到这一点,函数必须是运行时环境中的头等对象.在C等语言中,函数不是运行时中的对象,然 ...

  8. python 自定义函数语句_python 自定义函数

    在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回,return满足条件就不再执行下面的语句,也 ...

  9. python函数局部变量_Python局部函数– functoolspartial()

    python函数局部变量 什么是Python局部函数? (What is a Python Partial Function?) Sometimes a function accepts multip ...

最新文章

  1. matlab simulink实例,simulink实例(有好多实例)..ppt
  2. springboot的jsp应该放在哪_web项目jsp放在哪里 Spring Boot 静态资源处理(4)
  3. 奥巴马表示10天内债务谈判出结果 债务违约可能性底
  4. 科幻片天际SKYLINE,喜欢科幻的朋友不要错过。
  5. mysql 并行复制搭建_基于GTID的主从实践系列之④并行复制搭建及测试
  6. hdu2158 最短区间版大家来找碴
  7. 全新ARM base PocketPC 2003 Emulator Beta 已登場。
  8. log4j2常见配置
  9. Java Web学习(四)http协议
  10. python中控脚本_Python3.7实现中控考勤机自动连接
  11. 渗透测试专题二之msf(kali)的攻击教程将DOS操作系统中的本地文件接口“中断13”改造为网络文件系统...
  12. Diffusion扩散模型简述 + 代码demo
  13. springboot基于web的游泳馆信息管理系统毕业设计源码281444
  14. 爬虫CASE01:反爬策略之使用随机user-agent模拟浏览器的网页爬取
  15. DNS域名解析详细说明
  16. 7-28 猴子选大王 (20分)
  17. mysql 周平均值_SQL语句: 按周、月统计总值 和 平均值
  18. Win10使用局域网实现手机访问电脑共享文件
  19. JVM面试题整理-Java内存区域与内存溢出异常、垃圾收集器和内存分配策略
  20. java memorystream 包_C#到Java:Base64String,MemoryStream,GZipStream

热门文章

  1. 用鼠标去控制物体移动的方法
  2. Tomcat 6.0 简介
  3. Yii 2 美化 url
  4. 如何进行防SQL注入?
  5. oracle下lag和lead分析函数
  6. go conn 读取byte数组后是否要_【技术推荐】正向角度看Go逆向
  7. kafka java获取topic_通过编程方式获取Kafka中Topic的Metadata信息
  8. python地理位置聚类_python – 用于聚类地理位置数据的DBSCAN
  9. [转载] Java8 Stream流遍历 如何使用索引
  10. stl vector 函数_vector :: crbegin()函数,以及C ++ STL中的示例