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 随机数生成的代码的详细分析
May 15 Python
python 合并文件的具体实例
Aug 08 Python
有关wxpython pyqt内存占用问题分析
Jun 09 Python
python实现mysql的单引号字符串过滤方法
Nov 14 Python
python 网络编程常用代码段
Aug 28 Python
python中OrderedDict的使用方法详解
May 05 Python
CentOS下使用yum安装python-pip失败的完美解决方法
Aug 16 Python
详解python中asyncio模块
Mar 03 Python
Python日志模块logging基本用法分析
Aug 23 Python
python 搜索大文件的实例代码
Jul 08 Python
tensorflow 分类损失函数使用小记
Feb 18 Python
Tensorflow全局设置可见GPU编号操作
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
PHP字符串的连接的简单实例
2013/12/30 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
php面试实现反射注入的详细方法
2019/09/30 PHP
在laravel-admin中列表中禁止某行编辑、删除的方法
2019/10/03 PHP
PHP Swoole异步MySQL客户端实现方法示例
2019/10/24 PHP
PHP中用Trait封装单例模式的实现
2019/12/18 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
日期函数扩展类Ver0.1.1
2006/09/07 Javascript
用jquery中插件dialog实现弹框效果实例代码
2013/11/15 Javascript
jquery插件NProgress.js制作网页加载进度条
2015/06/05 Javascript
JavaScript检测字符串中是否含有html标签实现方法
2015/07/01 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
2015/11/25 Javascript
jquery实现点击页面回到顶部
2016/11/23 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
JavaScript数据结构之优先队列与循环队列实例详解
2017/10/27 Javascript
vue中axios解决跨域问题和拦截器的使用方法
2018/03/07 Javascript
JS实现点击按钮随机生成可拖动的不同颜色块示例
2019/01/30 Javascript
vue移动端实现手机左右滑动入场动画
2020/06/17 Javascript
利用d3.js制作连线动画图与编辑器的方法实例
2019/09/05 Javascript
JavaScript中break、continue和return的用法区别实例分析
2020/03/02 Javascript
解决VantUI popup 弹窗不弹出或无蒙层的问题
2020/11/03 Javascript
Python2随机数列生成器简单实例
2017/09/04 Python
PyQT实现菜单中的复制,全选和清空的功能的方法
2019/06/17 Python
python读取大文件越来越慢的原因与解决
2019/08/08 Python
在pytorch中查看可训练参数的例子
2019/08/18 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
Python GUI自动化实现绕过验证码登录
2020/01/10 Python
Python post请求实现代码实例
2020/02/28 Python
django 解决model中类写不到数据库中,数据库无此字段的问题
2020/05/20 Python
综合测评自我鉴定
2013/10/08 职场文书
建筑实习自我鉴定
2013/10/18 职场文书
机械专业应届生求职信
2013/12/12 职场文书
元旦晚会感言
2014/03/12 职场文书
2014年物业管理工作总结
2014/11/21 职场文书
物流业务员岗位职责
2015/04/03 职场文书
MySQL库表名大小写的选择
2021/06/05 MySQL