我们把一个事物进行分解,就可以得到其中的元素。对于python中的解包来说,也是同样的使用,相信大家从名称就可以观察出来了。那么在具体的解包过程中,关于具体的操作方法想必大家还是不清楚的。下面我们就python解包的概念、注意点进行讲解,然后带来一个解包的实例。
1、概念
解包就是把一个容器拆开、分解,在Python中的解包是自动完成的。
变量数量 = 元素数量,会进行逐一赋值。
2、注意
(1)自动解包支持一切可迭代对象。
(2)python3中,支持更高级的解包操作,用星号操作使得等号左边的变量个数可以少于右边迭代对象中元素的个数。
(3)函数调用时,可以用*或者**解包可迭代对象,作为参数传递。
(4)python3.5,函数调用和表达式中可支持更多的解包操作。
3、实例
一个list是一个整体,想把list中每个元素当成个体剥离出来。
> name, age, date = ['Bob', 20, '2018-1-1'] > name 'Bob' > age 20 > date '2018-1-1' 2.可迭代对象都可以这样做 # 列表 > a,b,c = ['a', 'b', 'c'] > a 'a' > a,b,c = enumerate(['a', 'b', 'c']) > a (0, 'a') # 元组 > a,b,c = ('a', 'b', 'c') > a 'a' # 字典 > a,b,c = {'a':1, 'b':2, 'c':3} > a 'a' > a,b,c = {'a':1, 'b':2, 'c':3}.items() > a ('a', 1) # 字符串 > a,b,c = 'abc' > a 'a' # 生成器 > a,b,c = (x + 1 for x in range(3)) > a 1
知识点扩展:
解包
在英文里叫做 Unpacking,就是将容器里面的元素逐个取出来放在其它地方,好比你父母去菜市场买了一袋苹果回来分别发给家里的每个成员,这个过程就是解包。Python 中的解包是自动完成的,例如:
student = ['xiaoqiang','man','22'] name,sex,age = student print(name,sex,age) 结果:xiaoqiang man 22
如果列表中有3个元素,那么刚好可以分配给3个变量。除了列表对象可以解包之外,任何可迭代对象都支持解包,可迭代对象包括元组、字典、集合、字符串、生成器等实现了__next__方法的一切对象。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月13日
2024年11月13日
- 陈雷.1995-烧翻卖【金圆唱片】【WAV+CUE】
- 乱石堆中一粒砂金——《使命召唤21》评测
- 【果娘聊天室】双11即将结束,各位今年买了啥?
- 双十一必入爆款:微星MPGZ890 EDGE TI刀锋钛主板评测
- 侃侃《植觉DSD》[低速原抓WAV+CUE]
- 摇滚乐.FlorenceandTheMachine-HowBig,HowBlue,HowBeautiful(2015)[96-24]FLAC
- 黑鸭子2008《听·好女人心》2CD[限量版][WAV+CUE]
- 孟庭苇《月亮说话》24K Gold 日本壓碟[WAV+CUE][1G]
- 齐秦《齐秦精选》环球 K2HD版 [低速原抓WAV+CUE][1G]
- 群星《2022年度抖音新歌》黑胶碟2CD[WAV+CUE][2G]
- 【原神】V5.1攻略 |「对决者·第一辑」30个成就达成
- 【原神】5.2卡池到底该怎么抽角色?毕竟下半卡池可是重量级
- 【原神】V5.1攻略 | 酒馆挑战:叶轮舞者
- 安雯.1994-想你总是在雨季【音乐家】【WAV+CUE】
- 张国荣.2010-I.AM.WHAT.I.AM.2CD【环球】【WAV+CUE】