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基础教程之udp端口扫描
Feb 10 Python
python文件读写并使用mysql批量插入示例分享(python操作mysql)
Feb 17 Python
解读Django框架中的低层次缓存API
Jul 24 Python
Python读取MRI并显示为灰度图像实例代码
Jan 03 Python
Tensorflow环境搭建的方法步骤
Feb 07 Python
pandas通过字典生成dataframe的方法步骤
Jul 23 Python
Python计算两个矩形重合面积代码实例
Sep 16 Python
pytorch中获取模型input/output shape实例
Dec 30 Python
python3爬取torrent种子链接实例
Jan 16 Python
解决echarts中饼图标签重叠的问题
May 16 Python
Python Sqlalchemy如何实现select for update
Oct 12 Python
Python jiaba库的使用详解
Nov 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
微信支付开发告警通知实例
2016/07/12 PHP
thinkPHP中volist标签用法示例
2016/12/06 PHP
jquery遍历input取得input的name
2009/04/27 Javascript
写js时遇到的一些小问题
2010/12/06 Javascript
基于jquery的不规则矩形的排列实现代码
2012/04/16 Javascript
JS中引用百度地图并将百度地图的logo和信息去掉
2013/09/29 Javascript
JavaScript结合AJAX_stream实现流式显示
2015/01/08 Javascript
Jquery遍历Json数据的方法
2015/04/20 Javascript
移动Web中图片自适应的两种JavaScript解决方法
2015/06/18 Javascript
JavaScript中字面量与函数的基本使用知识
2015/10/20 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
javascript中JSON.parse()与eval()解析json的区别
2016/05/19 Javascript
Node.js中使用jQuery的做法
2016/08/17 Javascript
JavaScript实现经典排序算法之冒泡排序
2016/12/28 Javascript
基于vue的短信验证码倒计时demo
2017/09/13 Javascript
详解VUE 数组更新
2017/12/16 Javascript
Vue render深入开发讲解
2018/04/13 Javascript
vue2.0父子组件间传递数据的方法
2018/08/16 Javascript
webpack打包多页面的方法
2018/11/30 Javascript
「中高级前端面试」JavaScript手写代码无敌秘籍(推荐)
2019/04/08 Javascript
atom-design(Vue.js移动端组件库)手势组件使用教程
2019/05/16 Javascript
原生js实现轮播图特效
2020/05/04 Javascript
nodejs中的异步编程知识点详解
2021/01/17 NodeJs
python采用requests库模拟登录和抓取数据的简单示例
2014/07/05 Python
Python库urllib与urllib2主要区别分析
2014/07/13 Python
在java中如何定义一个抽象属性示例详解
2017/08/18 Python
Python使用Flask-SQLAlchemy连接数据库操作示例
2018/08/31 Python
python实现AES和RSA加解密的方法
2019/03/28 Python
Python任意字符串转16, 32, 64进制的方法
2019/06/12 Python
Python 中 -m 的典型用法、原理解析与发展演变
2019/11/11 Python
css sprite简单实例
2016/05/23 HTML / CSS
澳洲小众品牌的集合网站:BNKR
2018/02/23 全球购物
教师网络培训感言
2014/03/09 职场文书
2014年餐厅服务员工作总结
2014/11/18 职场文书
python flappy bird小游戏分步实现流程
2022/02/15 Python
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技