python解包概念及实例


Posted in Python onFebruary 17, 2021

我们把一个事物进行分解,就可以得到其中的元素。对于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__方法的一切对象。

到此这篇关于python解包概念及实例的文章就介绍到这了,更多相关python解包是什么内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中关于字符串对象的一些基础知识
Apr 08 Python
python用户管理系统的实例讲解
Dec 23 Python
在Windows中设置Python环境变量的实例讲解
Apr 28 Python
Pycharm导入Python包,模块的图文教程
Jun 13 Python
python traceback捕获并打印异常的方法
Aug 31 Python
使用 Python 实现微信群友统计器的思路详解
Sep 26 Python
浅谈python中str字符串和unicode对象字符串的拼接问题
Dec 04 Python
Django框架模型简单介绍与使用分析
Jul 18 Python
Python3实现zip分卷压缩过程解析
Oct 09 Python
python读写文件write和flush的实现方式
Feb 21 Python
tensorflow实现从.ckpt文件中读取任意变量
May 26 Python
详解Python中openpyxl模块基本用法
Feb 23 Python
requests在python中发送请求的实例讲解
Feb 17 #Python
python切片作为占位符使用实例讲解
Feb 17 #Python
Django视图类型总结
Feb 17 #Python
Python3+SQLAlchemy+Sqlite3实现ORM教程
Feb 16 #Python
Python3+Appium安装及Appium模拟微信登录方法详解
Feb 16 #Python
Python3使用Selenium获取session和token方法详解
Feb 16 #Python
Python3+PyCharm+Django+Django REST framework配置与简单开发教程
Feb 16 #Python
You might like
检查url链接是否已经有参数的php代码 添加 ? 或 &
2010/02/09 PHP
php+xml实现在线英文词典查询的方法
2015/01/23 PHP
php实现有趣的人品测试程序实例
2015/06/08 PHP
php使用MySQL保存session会话的方法
2015/06/26 PHP
thinkphp autoload 命名空间自定义 namespace
2015/07/17 PHP
php实现的微信红包算法分析(非官方)
2015/09/25 PHP
php的debug相关函数用法示例
2016/07/11 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
理解JavaScript中的事件
2006/09/23 Javascript
JavaScript 中的replace方法说明
2007/04/13 Javascript
jquery 可拖拽的窗体控件实现代码
2010/03/21 Javascript
parseInt parseFloat js字符串转换数字
2010/08/01 Javascript
将string解析为json的几种方式小结
2010/11/11 Javascript
JavaScript之HTMLCollection接口代码
2011/04/27 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
2013/09/06 Javascript
获取select元素被选中的文本内容的js代码
2014/01/29 Javascript
jQuery实现判断控件是否显示的方法
2017/01/11 Javascript
微信小程序开发之改变data中数组或对象的某一属性值
2018/07/05 Javascript
jQuery 实现倒计时天,时,分,秒功能
2018/07/31 jQuery
Vue中使用clipboard实现复制功能
2018/09/05 Javascript
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
Python正则获取、过滤或者替换HTML标签的方法
2016/01/28 Python
Python Flask-web表单使用详解
2017/11/18 Python
python初学之用户登录的实现过程(实例讲解)
2017/12/23 Python
Python入门学习指南分享
2018/04/11 Python
详解Python做一个名片管理系统
2019/03/14 Python
CSS3 三维变形实现立体方块特效源码
2016/12/15 HTML / CSS
css3实现超立体3D图片侧翻倾斜效果
2014/04/16 HTML / CSS
朗仕(Lab series)英国官网:雅诗兰黛集团男士专属护肤品牌
2017/11/28 全球购物
使用索引有什么好处
2016/07/27 面试题
How to spawning asynchronous work in J2EE
2016/08/29 面试题
雪山饭庄的创业计划书范文
2014/01/18 职场文书
临床护士自荐信
2014/01/31 职场文书
司法建议书范文
2014/05/13 职场文书
支部鉴定材料
2014/06/02 职场文书
大学生个人求职信
2014/06/02 职场文书