详解Python3 对象组合zip()和回退方式*zip


Posted in Python onMay 15, 2019

zip即将多个可迭代对象组合为一个可迭代的对象,每次组合时都取出对应顺序的对象元素组合为元组,直到最少的对象中元素全部被组合,剩余的其他对象中未被组合的元素将被舍弃。

keys = ['one', 'two', 'three']
values = [1, 2, 3]
d = zip(keys, values)
print(list(d))

示例结果:

[('one', 1), ('two', 2), ('three', 3)]

可以看到我们由 zip 模拟了一个类似字典的一一对应的元组迭代对象,并将其转化为 list 类型查看,当然我们可以利用获取迭代对象生成真正的键值字典:

keys = ['one', 'two', 'three']
values = [1, 2, 3]
d = zip(keys, values)
D = {}
for key, value in d:
  print(key, value)
  D[key] = value
print(D)

示例结果:

one 1
two 2
three 3
{'one': 1, 'two': 2, 'three': 3}

我们可以利用for循环迭代赋值给字典完成对应的键值映射,在Python3中我们还可以用一句话就可以完成 D = dict(zip(keys,values)) .

*zip

当我们想回退为迭代器组合之前的状态时,我们可以利用 * “解压”现在“压缩”过的新的迭代对象

keys = ['one', 'two', 'three', 'four']
values = [1, 2, 3]
d = zip(keys, values)
older = zip(*d)
print(list(older))

“解压”结果:

[('one', 'two', 'three'), (1, 2, 3)]

PS:Python3:zip()和*zip()函数

描述

  • zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组
  • *zip() 和zip()配合使用,具体看下面示例

Showing code by screenshot ~~

1. zip()

详解Python3 对象组合zip()和回退方式*zip

2. *zip()

详解Python3 对象组合zip()和回退方式*zip

总结

以上所述是小编给大家介绍的Python3 对象组合zip()和回退方式*zip,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python字符串处理函数简明总结
Apr 13 Python
Django学习笔记之ORM基础教程
Mar 27 Python
django2用iframe标签完成网页内嵌播放b站视频功能
Jun 20 Python
python3中os.path模块下常用的用法总结【推荐】
Sep 16 Python
对python3新增的byte类型详解
Dec 04 Python
python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
Jul 06 Python
python 默认参数相关知识详解
Sep 18 Python
Python3常见函数range()用法详解
Dec 30 Python
Python爬虫入门教程01之爬取豆瓣Top电影
Jan 24 Python
使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
Feb 07 Python
python实现简单倒计时功能
Apr 21 Python
用Python创建简易网站图文教程
Jun 11 Python
python语言元素知识点详解
May 15 #Python
django admin后台添加导出excel功能示例代码
May 15 #Python
Python中单线程、多线程和多进程的效率对比实验实例
May 14 #Python
Dlib+OpenCV深度学习人脸识别的方法示例
May 14 #Python
Python发展简史 Python来历
May 14 #Python
Python基础知识点 初识Python.md
May 14 #Python
Python应用领域和就业形势分析总结
May 14 #Python
You might like
PHP跨时区(UTC时间)应用解决方案
2013/01/11 PHP
有关PHP性能优化的介绍
2013/06/20 PHP
计算php页面运行时间的函数介绍
2013/07/01 PHP
php字符编码转换之gb2312转为utf8
2013/10/28 PHP
php微信浏览器分享设置以及回调详解
2016/08/01 PHP
浅析php中array_map和array_walk的使用对比
2016/11/20 PHP
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
2007/02/09 Javascript
不错的JS中变量相关的细节分析
2007/08/13 Javascript
jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
2011/01/01 Javascript
js跨域访问示例(客户端/服务端)
2014/05/19 Javascript
javascript使用输出语句实现网页特效代码
2015/08/06 Javascript
解决JS无法调用Controller问题的方法
2015/12/31 Javascript
js制作网站首页图片轮播特效代码
2016/08/30 Javascript
KnockoutJS 3.X API 第四章之数据控制流component绑定
2016/10/10 Javascript
Vue.js一个文件对应一个组件实践
2016/10/27 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
JS如何判断浏览器类型和详细区分IE各版本浏览器
2017/03/04 Javascript
NodeJS测试框架mocha入门教程
2017/03/28 NodeJs
vue项目关闭eslint校验
2018/03/21 Javascript
微信小程序自定义导航教程(兼容各种手机)
2018/12/12 Javascript
Vue.js中的组件系统
2019/05/30 Javascript
p5.js绘制创意自画像
2019/11/04 Javascript
全面解析Vue中的$nextTick
2020/12/24 Vue.js
[02:39]DOTA2国际邀请赛助威团西雅图第一天
2013/08/08 DOTA
[01:02:05]LGD vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python 排列组合之itertools
2013/03/20 Python
Python利用正则表达式匹配并截取指定子串及去重的方法
2015/07/30 Python
Python 描述符(Descriptor)入门
2016/11/20 Python
基于Django用户认证系统详解
2018/02/21 Python
分分钟入门python语言
2018/03/20 Python
python执行CMD指令,并获取返回的方法
2018/12/19 Python
日本民宿预约平台:STAY JAPAN
2017/07/01 全球购物
幼儿园长自我鉴定
2013/10/17 职场文书
保险专业大专生求职信
2013/10/26 职场文书
经典优秀毕业生求职信范文分享
2013/12/18 职场文书
django如何自定义manage.py管理命令
2021/04/27 Python