详解python 拆包可迭代数据如tuple, list
拆包是指将一个结构中的数据拆分为多个单独变量中。
以元组为例:
>>>a=('windows',10,25.1,(2017,12,29))
假设数据的意思是购买windows10份,每份价值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:toomanyvaluestounpack
>>>_,price,(*_,m,d)=a Traceback(mostrecentcalllast): File"",line1,in _,price,(*_,m,d)=a ValueError:toomanyvaluestounpack(expected3)
总结
以上所述是小编给大家介绍的python拆包可迭代数据如tuple,list,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。