使用Python将数组的元素导出到变量中(unpacking)


Posted in Python onOctober 27, 2016

解决的问题

需要将数组(list)或元组(tuple)中的元素导出到N个变量中。

解决的方案

任何序列都可以通过简单的变量赋值方式将其元素分配到对应的变量中,唯一的要求就是变量的数量和结构需要和序列中的结构完全一致。

p = (1, 2)
x, y = p
# x = 1
# y = 2

data = ['google', 100.1, (2016, 5, 31)]
name, price, date = data
# name = 'google'
# price = 100.1
# date = (2016, 5, 31)

name, price, (year, month, day) = data
# name = 'google'
# price = 100.1
# year = 2016
# month = 5
# day = 31

如果变量结构和元素结构不一致,你将会遇到以下错误:

p = (1, 2)
x, y, z = p

Traceback (most recent call last):
 File "<pyshell#12>", line 1, in <module>
  x, y, z = p
ValueError: not enough values to unpack (expected 3, got 2)

其实这样的操作不限于元组和数组,在字符串中也是可以用的。Unpacking支持大多数我们常见的序列,比如文件迭代,各种生成器等等。

s = 'Hello'
a,b,c,d,e = s
# a = 'H'
# b = 'e'

如果导出过程中你想丢掉一些元素,其实Python并不支持这样的语法,不过你可以指定一些不常用的变量来达到你的目的。

data = ['google', 100.1, (2016, 5, 31)]
name, _, (_,month,_) = data
# name = 'google'
# month = '5'
# other fileds will be discarded

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能有所帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python随机生成信用卡卡号的实现方法
May 14 Python
Django中对数据查询结果进行排序的方法
Jul 17 Python
Python实现批量压缩图片
Jan 25 Python
Python3爬虫学习之爬虫利器Beautiful Soup用法分析
Dec 12 Python
详解Python基础random模块随机数的生成
Mar 23 Python
Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
Apr 15 Python
Python安装Flask环境及简单应用示例
May 03 Python
用Python实现将一张图片分成9宫格的示例
Jul 05 Python
Python内存管理实例分析
Jul 10 Python
Python 使用threading+Queue实现线程池示例
Dec 21 Python
python爬虫scrapy框架的梨视频案例解析
Feb 20 Python
深度学习详解之初试机器学习
Apr 14 Python
Python中断言Assertion的一些改进方案
Oct 27 #Python
利用Python实现颜色色值转换的小工具
Oct 27 #Python
Python实现批量检测HTTP服务的状态
Oct 27 #Python
python解决网站的反爬虫策略总结
Oct 26 #Python
Python控制多进程与多线程并发数总结
Oct 26 #Python
Python网络爬虫项目:内容提取器的定义
Oct 25 #Python
Python实现ssh批量登录并执行命令
Oct 25 #Python
You might like
PHP获得用户使用的代理服务器ip即真实ip
2006/12/31 PHP
完美解决dedecms中的[html][/html]和[code][/code]问题
2007/03/20 PHP
php下清空字符串中的HTML标签的代码
2010/09/06 PHP
PHP 函数执行效率的小比较
2010/10/17 PHP
Centos下升级php5.2到php5.4全记录(编译安装)
2015/04/03 PHP
php+mysql+jquery实现简易的检索自动补全提示功能
2017/04/15 PHP
jQuery使用手册之三 CSS操作
2007/03/24 Javascript
仿服务器端脚本方式的JS模板实现方法
2007/04/27 Javascript
javascript Prototype 对象扩展
2009/05/15 Javascript
js创建子窗口并且回传值示例代码
2013/07/02 Javascript
巧用局部变量提升javascript性能
2014/02/24 Javascript
js判断鼠标位置是否在某个div中的方法
2016/02/26 Javascript
Bootstrap进度条组件知识详解
2016/05/01 Javascript
jQuery获取所有父级元素及同级元素及子元素的方法(推荐)
2018/01/21 jQuery
angularjs数组判断是否含有某个元素的实例
2018/02/27 Javascript
小试SVG之新手小白入门教程
2019/01/08 Javascript
vue自定义指令directive的使用方法
2019/04/07 Javascript
重学JS之显示强制类型转换详解
2019/06/30 Javascript
浅析vue cli3 封装Svgicon组件正确姿势(推荐)
2020/04/27 Javascript
JS深入学习之数组对象排序操作示例
2020/05/01 Javascript
Python Sleep休眠函数使用简单实例
2015/02/02 Python
python使用PIL模块获取图片像素点的方法
2019/01/08 Python
用Python解决x的n次方问题
2019/02/08 Python
Python脚本按照当前日期创建多级目录
2019/03/01 Python
numpy linalg模块的具体使用方法
2019/05/26 Python
Pytorch对Himmelblau函数的优化详解
2020/02/29 Python
python 图像增强算法实现详解
2021/01/24 Python
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
介绍一下UNIX启动过程
2013/11/14 面试题
行政助理的职责
2013/11/14 职场文书
爱情检讨书大全
2014/01/21 职场文书
银行工作检查书范文
2014/01/31 职场文书
《自然之道》教学反思
2014/02/11 职场文书
研究生毕业自我鉴定范文
2014/03/27 职场文书
人事文员岗位职责
2015/02/04 职场文书
2015年女职工工作总结
2015/05/15 职场文书