详解python 拆包可迭代数据如tuple, list


Posted in Python onDecember 29, 2017

拆包是指将一个结构中的数据拆分为多个单独变量中。

以元组为例:

>>> a = ('windows', 10, 25.1, (2017, 12, 29))

假设数据的意思是购买windows 10 份, 每份价值25.1刀。数据获取时间是2017年12月29日。

我们需要获取该数据中每份的价格:

>>> a[2]

也可以使用拆包的方法:

>>>os_type, number, price, dat = a
>>>price

注意的问题拆包对象必须是可迭代的比如tuple和list。

第二个问题:我们只关心价格和日期,不关心系统和数量:

用一个不使用的变量,然后通过适配符号*,统配前两项。

>>> *_, price, dat = a
>>> price
>>>dat

第三个问题,如果我们只关心价格和月份,如何解开包?

>>> *_, price, (_, m, d) = a
>>> price
>>> m

注意解包在python中都支持,但是使用*统配多个数值python3中开始支持。所以使用*时候注意python版本信息。

问题: 如果左边和右边个数不匹配,没有使用*,结果会是什么:

ValueError: too many values to unpack

>>> _, price, (*_, m, d) =a
Traceback (most recent call last):
 File "<pyshell#10>", line 1, in <module>
 _, price, (*_, m, d) =a
ValueError: too many values to unpack (expected 3)

总结

以上所述是小编给大家介绍的python 拆包可迭代数据如tuple, list,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
详细讲解Python中的文件I/O操作
May 24 Python
python使用xmlrpclib模块实现对百度google的ping功能
Jun 02 Python
各个系统下的Python解释器相关安装方法
Oct 12 Python
python实现rsa加密实例详解
Jul 19 Python
Python实现数据可视化看如何监控你的爬虫状态【推荐】
Aug 10 Python
python3实现名片管理系统
Nov 29 Python
python实现XML解析的方法解析
Nov 16 Python
PyQt5实现登录页面
May 30 Python
如何在Windows中安装多个python解释器
Jun 16 Python
Python爬虫获取豆瓣电影并写入excel
Jul 31 Python
如何在vscode中安装python库的方法步骤
Jan 06 Python
python3 sqlite3限制条件查询的操作
Apr 07 Python
详解Python异常处理中的Finally else的功能
Dec 29 #Python
Python2.7+pytesser实现简单验证码的识别方法
Dec 29 #Python
Python实现破解12306图片验证码的方法分析
Dec 29 #Python
解决python使用open打开文件中文乱码的问题
Dec 29 #Python
python爬虫获取京东手机图片的图文教程
Dec 29 #Python
python通过getopt模块如何获取执行的命令参数详解
Dec 29 #Python
基于并发服务器几种实现方法(总结)
Dec 29 #Python
You might like
理解php Hash函数,增强密码安全
2011/02/25 PHP
修改php.ini以达到屏蔽错误信息并记录日志
2013/06/16 PHP
常用PHP框架功能对照表
2014/10/23 PHP
使用图灵api创建微信聊天机器人
2015/07/23 PHP
PHP的openssl加密扩展使用小结(推荐)
2016/07/18 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
2019/03/22 PHP
php post换行的方法
2020/02/03 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
jquery validator 插件增加日期比较方法
2010/02/21 Javascript
神奇的7个jQuery 3D插件整理
2011/01/06 Javascript
JavaScript学习笔记(一) js基本语法
2011/10/25 Javascript
js为数字添加逗号并格式化数字的代码
2013/08/23 Javascript
多种JQuery循环滚动文字图片效果代码
2020/06/23 Javascript
JavaScript学习笔记之取数组中最大值和最小值
2016/03/23 Javascript
微信小程序 特效菜单抽屉效果实例代码
2017/01/11 Javascript
Node.js数据库操作之查询MySQL数据库(二)
2017/03/04 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
2017/04/20 Javascript
Angular中实现树形结构视图实例代码
2017/05/05 Javascript
浅谈sass在vue注意的地方
2017/08/10 Javascript
JS实现多物体运动的方法详解
2018/01/23 Javascript
js+css实现扇形导航效果
2020/08/18 Javascript
[10:34]DOTA2上海特级锦标赛全纪录
2016/03/25 DOTA
对python中raw_input()和input()的用法详解
2018/04/22 Python
利用Python+阿里云实现DDNS动态域名解析的方法
2019/04/01 Python
selenium 安装与chromedriver安装的方法步骤
2019/06/12 Python
深入了解Python装饰器的高级用法
2020/08/13 Python
Python页面加载的等待方式总结
2021/02/28 Python
DJI全球:DJI Global
2021/03/15 全球购物
请解释在new与override的区别
2012/10/29 面试题
营业员个人总结的自我评价
2013/10/25 职场文书
商务英语本科生的自我评价分享
2013/11/15 职场文书
2013届毕业生求职信范文
2013/11/20 职场文书
检讨书范文大全
2015/05/07 职场文书
2019年幼儿园家长接送责任书
2019/10/29 职场文书
JS继承最简单的理解方式
2021/03/31 Javascript
numpy array找出符合条件的数并赋值的示例代码
2022/06/01 Python