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遍历目录并批量更换文件名和目录名的方法
Sep 19 Python
python 开发的三种运行模式详细介绍
Jan 18 Python
对Python中内置异常层次结构详解
Oct 18 Python
Python实现常见的回文字符串算法
Nov 14 Python
Python3 jupyter notebook 服务器搭建过程
Nov 30 Python
Python中logging实例讲解
Jan 17 Python
python读取图片任意范围区域
Jan 23 Python
OpenCV 边缘检测
Jul 10 Python
python多线程实现代码(模拟银行服务操作流程)
Jan 13 Python
Python创建空列表的字典2种方法详解
Feb 13 Python
Python使用urllib模块对URL网址中的中文编码与解码实例详解
Feb 18 Python
浅谈在django中使用filter()(即对QuerySet操作)时踩的坑
Mar 31 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
一个可以找出源代码中所有中文的工具
2006/10/25 PHP
php中var_export与var_dump的区别分析
2010/08/21 PHP
php的一个简单加密解密代码
2014/01/14 PHP
PHP实现绘制3D扇形统计图及图片缩放实例
2014/10/01 PHP
php框架CodeIgniter使用redis的方法分析
2018/04/13 PHP
php 使用expat方式解析xml文件操作示例
2019/11/26 PHP
PHP大文件及断点续传下载实现代码
2020/08/18 PHP
两种WEB下的模态对话框 (asp.net或js的分别实现)
2009/12/02 Javascript
from表单多个按钮提交用onclick跳转不同action
2014/04/24 Javascript
JavaScript实现向setTimeout执行代码传递参数的方法
2015/04/16 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
Vue-router路由判断页面未登录跳转到登录页面的实例
2017/10/26 Javascript
Vue动态加载异步组件的方法
2018/11/21 Javascript
小程序getLocation需要在app.json中声明permission字段
2019/04/04 Javascript
react+redux仿微信聊天界面
2019/06/21 Javascript
Vue开发环境跨域访问问题
2020/01/22 Javascript
移动端JS实现拖拽两种方法解析
2020/10/12 Javascript
python 域名分析工具实现代码
2009/07/15 Python
python表格存取的方法
2018/03/07 Python
Python基于分析Ajax请求实现抓取今日头条街拍图集功能示例
2018/07/19 Python
APIStar:一个专为Python3设计的API框架
2018/09/26 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
2019/05/31 Python
python3 打印输出字典中特定的某个key的方法示例
2019/07/06 Python
python入门之井字棋小游戏
2020/03/05 Python
解决在keras中使用model.save()函数保存模型失败的问题
2020/05/21 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
男女时尚与复古风格在线购物:RoseGal(全球免费送货)
2017/07/19 全球购物
预备党员公开承诺书
2014/05/28 职场文书
解放思想大讨论活动心得体会
2014/09/11 职场文书
普通党员个人剖析材料
2014/10/08 职场文书
毕业典礼邀请函
2015/01/31 职场文书
西游降魔篇观后感
2015/06/15 职场文书
pytorch 如何使用amp进行混合精度训练
2021/05/24 Python
JS数组方法some、every和find的使用详情
2021/10/05 Javascript
pycharm安装深度学习pytorch的d2l包失败问题解决
2022/03/25 Python
HttpClient实现表单提交上传文件
2022/08/14 Java/Android