python解包用法详解


Posted in Python onFebruary 17, 2021

对于一堆资料,我们可以把它分给不同的人使用,这个分散的过程,我们可以看成是解包方法是实现。当然实际python解包的使用会相对复杂一点,我们会对常见的列表、函数等进行操作。下面我们就Python解包的使用进行说明,然后带来两种解包方法的详解,大家一起往下看。

1、使用说明

(1)解包的意义就是将传递给函数的一个列表,元组,字典,拆分成独立的多个元素然后赋值给函数中的形参变量。

(2)解包字典有两种解法,一种用*解的只有key,一种用**解的有key、value。但是这个方法**只能在函数定义中使用。

2、*方法

字典解包后,只会把字典的key取出来,value 则丢掉了。

(1)列表解包

a, b, c = [1, 2, 3]
print(a, b, c)
# 1 2 3

(2)元祖解包

a, b, c = (1, 2, 3)
print(a, b, c)
# 1 2 3

(3)字符串解包

a, b, c = "abc"
print(a, b, c)
# a b c

(4)字典解包

a, b, c = {"a": 1, "b": 2, "c": 3}
print(a, b, c)
# a b c

接收函数返回值

def test():
  return 1, 2, 3
a, b, c = test()
print(a, b, c)   # 1 2 3

3、**方法函数解包

函数的返回值是一个元组,左侧是三个变量,这样就会发生解包,a, b, c依次等于元组里的元素,函数的返回值有3个,被封包成了元组, 赋值语句的左侧不一定非得是3个变量。

def test():
  return 1, 2, 3
a, *b = test()
print(a, b)   # 1 [2, 3]

变量a赋值为1,变量b前面有一个星号,剩余的2,3 将被解包为列表。

知识点扩展:

了解解包,首先要了解什么是参数。比如我们要运行ex1.py这个文件,我们可以在命令行(徽标键+r)中输入命令“pyhton ex1.py”即可运行,但注意要先进入到py文件所在路径。其中,ex1.py便是参数。下面以一个可以接受参数的脚本为例来阐述相关知识。

from sys import argv
#import语句目的是将python功能引入脚本当中,一看“import”,就知道程序使用了哪些功能
#argv是“参数变量”的意思,这是一个非常标准的编程术语。这个变量包含了用户传递给python的参数
#用“import”导入进来的功能称为“模组(modules)”(也有人叫作“库”)。
 
script,first,second,third = argv
#上面一行作用是给argv“解包(unpack)”,即一次性将所有参数赋予变量名
#可理解为将argv中的东西解包,即将所有的参数依次赋予左边的变量名
 
print("the script is called:", script)
print("your first variable is:",first)
print("your second variable is:",second)
print("your third variable is:",third)

到此这篇关于python解包用法详解的文章就介绍到这了,更多相关python解包如何使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python线程池的实现实例
Nov 18 Python
Python基于回溯法子集树模板解决马踏棋盘问题示例
Sep 11 Python
Python编程实现使用线性回归预测数据
Dec 07 Python
从django的中间件直接返回请求的方法
May 30 Python
Python爬取个人微信朋友信息操作示例
Aug 03 Python
Numpy之文件存取的示例代码
Aug 03 Python
python os.path模块常用方法实例详解
Sep 16 Python
Python 最大概率法进行汉语切分的方法
Dec 14 Python
django实现模型字段动态choice的操作
Apr 01 Python
Django通过json格式收集主机信息
May 29 Python
深入解析NumPy中的Broadcasting广播机制
May 30 Python
如何用Python搭建gRPC服务
Jun 30 Python
python压包的概念及实例详解
Feb 17 #Python
python解包概念及实例
Feb 17 #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
You might like
CodeIgniter针对数据库的连接、配置及使用方法
2016/03/03 PHP
PHP设计模式之模板方法模式定义与用法详解
2018/04/02 PHP
javascript之更有效率的字符串替换
2008/08/02 Javascript
jQuery 图像裁剪插件Jcrop的简单使用
2009/05/22 Javascript
JavaScript 动态生成方法的例子
2009/07/22 Javascript
js 多种变量定义(对象直接量,数组直接量和函数直接量)
2010/05/24 Javascript
js实现点击后将文字或图片复制到剪贴板的方法
2014/08/04 Javascript
js+html5实现canvas绘制镂空字体文本的方法
2015/06/05 Javascript
JavaScript自定义文本框光标
2017/03/05 Javascript
微信小程序网络请求wx.request详解及实例
2017/05/18 Javascript
Nodejs调用WebService的示例代码
2017/09/29 NodeJs
通过vue提供的keep-alive减少对服务器的请求次数
2018/04/01 Javascript
在HTML文档中嵌入JavaScript的四种方法
2018/05/07 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
微信小程序多音频播放进度条问题
2018/08/28 Javascript
d3.js实现图形缩放平移
2019/12/19 Javascript
[01:11:27]2018DOTA2亚洲邀请赛小组赛 A组加赛 Newbee vs Optic
2018/04/03 DOTA
在Django框架中设置语言偏好的教程
2015/07/27 Python
浅谈tensorflow中几个随机函数的用法
2018/07/27 Python
Django代码性能优化与Pycharm Profile使用详解
2018/08/26 Python
Python当中的array数组对象实例详解
2019/06/12 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
Python datetime包函数简单介绍
2019/08/28 Python
使用python代码进行身份证号校验的实现示例
2019/11/21 Python
Spring http服务远程调用实现过程解析
2020/06/11 Python
python3实现将json对象存入Redis以及数据的导入导出
2020/07/16 Python
美国演唱会订票网站:Ticketmaster美国
2017/10/05 全球购物
英国工作场所设备购买网站:Slingsby
2019/05/03 全球购物
清扬洗发水广告词
2014/03/14 职场文书
鼓舞士气的口号
2014/06/16 职场文书
2014年学习部工作总结
2014/11/12 职场文书
企业投资意向书
2015/05/09 职场文书
小学四年级作文之写景
2019/08/23 职场文书
小学生作文之《压岁钱的烦恼》
2019/09/27 职场文书
微前端qiankun改造日渐庞大的项目教程
2022/06/21 Javascript
win10系统xps文件怎么打开?win10打开xps文件的两种操作方法
2022/07/23 数码科技