详解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 模拟员工信息数据库操作的实例
Oct 23 Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 Python
对python中的乘法dot和对应分量相乘multiply详解
Nov 14 Python
浅谈pandas筛选出表中满足另一个表所有条件的数据方法
Feb 08 Python
python爬虫 基于requests模块发起ajax的get请求实现解析
Aug 20 Python
nginx+uwsgi+django环境搭建的方法步骤
Nov 25 Python
tensorflow模型文件(ckpt)转pb文件的方法(不知道输出节点名)
Apr 22 Python
Python 为什么推荐蛇形命名法原因浅析
Jun 18 Python
利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)
Sep 04 Python
Python利用matplotlib绘制折线图的新手教程
Nov 05 Python
Python tkinter实现日期选择器
Feb 22 Python
python实现简单文件读写函数
Feb 25 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的博客ping服务代码
2012/02/04 PHP
PHP管理内存函数 memory_get_usage()使用介绍
2012/09/23 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
2016/08/12 PHP
PHP SESSION机制的理解与实例
2019/03/22 PHP
css图片自适应大小
2007/11/28 Javascript
javascript hashtable 修正版 下载
2010/12/30 Javascript
jQuery调用WebService的实现代码
2011/06/19 Javascript
JS中引用百度地图并将百度地图的logo和信息去掉
2013/09/29 Javascript
教你如何使用firebug调试功能了解javascript闭包和this
2015/03/04 Javascript
JavaScript中string对象
2015/06/12 Javascript
jQuery qrcode生成二维码的方法
2016/04/03 Javascript
基于javascript实现精确到毫秒的倒计时限时抢购
2016/04/17 Javascript
深入浅析knockout源码分析之订阅
2016/07/12 Javascript
老生常谈javascript变量的命名规范和注释
2016/09/29 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
2017/09/16 Javascript
vue中实现动态生成二维码的方法
2020/02/21 Javascript
JavaScript中this函数使用实例解析
2020/02/21 Javascript
jQuery实现动态向上滚动
2020/12/21 jQuery
vscode自定义vue模板的实现
2021/01/27 Vue.js
python中使用sys模板和logging模块获取行号和函数名的方法
2014/04/15 Python
给Python IDLE加上自动补全和历史功能
2014/11/30 Python
python书籍信息爬虫实例
2018/03/19 Python
Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS浅析
2018/05/08 Python
Keras load_model 导入错误的解决方式
2020/06/09 Python
flask项目集成swagger的方法
2020/12/09 Python
CSS3实现精美横向滚动菜单按钮
2017/04/14 HTML / CSS
html5之Canvas路径绘图、坐标变换应用实例
2012/12/26 HTML / CSS
生产厂厂长岗位职责
2013/12/25 职场文书
英语专业毕业生自荐信范文
2013/12/31 职场文书
电大会计学自我鉴定
2014/02/06 职场文书
2014公司党员自我评价范文
2014/09/11 职场文书
2015年暑期见闻
2015/07/14 职场文书
拔河比赛新闻稿
2015/07/17 职场文书
2016党员发展对象培训心得体会
2016/01/08 职场文书
数据库连接池
2021/04/06 MySQL
如何用JS实现简单的数据监听
2021/05/06 Javascript