详解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 相关文章推荐
Django1.7+python 2.78+pycharm配置mysql数据库教程
Nov 18 Python
Python中处理时间的几种方法小结
Apr 09 Python
深入理解python中的atexit模块
Mar 07 Python
Python基于递归算法实现的走迷宫问题
Aug 04 Python
Python实现字符串与数组相互转换功能示例
Sep 22 Python
python实现简单淘宝秒杀功能
May 03 Python
浅析python3字符串格式化format()函数的简单用法
Dec 07 Python
Python 使用list和tuple+条件判断详解
Jul 30 Python
python实现查找所有程序的安装信息
Feb 18 Python
使用Pycharm分段执行代码
Apr 15 Python
Python绘制全球疫情变化地图的实例代码
Apr 20 Python
教你如何用python开发一款数字推盘小游戏
Apr 14 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 mysqli_free_result()与mysqli_fetch_array()函数详解
2016/09/21 PHP
PHP7 参数处理机制修改
2021/03/09 PHP
JavaScript类型转换方法及需要注意的问题小结(挺全面)
2010/11/11 Javascript
多种方法判断Javascript对象是否存在
2013/09/22 Javascript
javascript基本语法
2016/05/31 Javascript
jquery popupDialog 使用 加载jsp页面的方法
2016/10/25 Javascript
原生js封装自定义滚动条
2017/03/24 Javascript
js轮播图透明度切换(带上下页和底部圆点切换)
2017/04/27 Javascript
纯JS实现只能输入数字的简单代码
2017/06/21 Javascript
微信小程序获取手机网络状态的方法【附源码下载】
2017/12/08 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
2019/05/27 jQuery
vue-cli3添加模式配置多环境变量的方法
2019/06/05 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
Node.js 中判断一个文件是否存在
2020/08/24 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:EE凭借法力虚空拿下4杀
2017/03/30 DOTA
python通过文件头判断文件类型
2015/10/30 Python
详解Python操作RabbitMQ服务器消息队列的远程结果返回
2016/06/30 Python
详解Python中表达式i += x与i = i + x是否等价
2017/02/08 Python
Django在win10下的安装并创建工程
2017/11/20 Python
python 2.7.14安装图文教程
2018/04/08 Python
python对excel文档去重及求和的实例
2018/04/18 Python
想学python 这5本书籍你必看!
2018/12/11 Python
selenium+python自动化测试之页面元素定位
2019/01/23 Python
python3 selenium自动化 下拉框定位的例子
2019/08/23 Python
如何更改 pandas dataframe 中两列的位置
2019/12/27 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
2020/03/06 Python
Python urllib.request对象案例解析
2020/05/11 Python
浅谈numpy中函数resize与reshape,ravel与flatten的区别
2020/06/18 Python
Python利用socket模块开发简单的端口扫描工具的实现
2021/01/27 Python
大学毕业生最详细的自我评价分享
2013/11/18 职场文书
会计专业毕业生求职信
2014/07/04 职场文书
2014年勤工助学工作总结
2014/11/24 职场文书
党员活动总结
2015/02/04 职场文书
银行客户经理岗位职责
2015/04/09 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS