使用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 相关文章推荐
多线程爬虫批量下载pcgame图片url 保存为xml的实现代码
Jan 17 Python
python网络编程学习笔记(一)
Jun 09 Python
纯Python开发的nosql数据库CodernityDB介绍和使用实例
Oct 23 Python
详解Python中的文本处理
Apr 11 Python
python统计多维数组的行数和列数实例
Jun 23 Python
用Python获取摄像头并实时控制人脸的实现示例
Jul 11 Python
pytorch中的embedding词向量的使用方法
Aug 18 Python
numpy求平均值的维度设定的例子
Aug 24 Python
python 输出列表元素实例(以空格/逗号为分隔符)
Dec 25 Python
用ldap作为django后端用户登录验证的实现
Dec 07 Python
django inspectdb 操作已有数据库数据的使用步骤
Feb 07 Python
Python 用户输入和while循环的操作
May 23 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 imagecreatefrombmp 从BMP文件或URL新建一图像
2012/07/16 PHP
PHP文件上传主要代码讲解
2013/09/30 PHP
Yii框架getter与setter方法功能与用法分析
2019/10/22 PHP
js创建对象的几种常用方式小结(推荐)
2010/10/24 Javascript
JQuery里选择超链接的实现代码
2011/05/22 Javascript
jquery和js实现对div的隐藏和显示方法
2014/09/26 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
2015/03/26 Javascript
跟我学习javascript的基本类型和引用类型
2015/11/16 Javascript
JS动态加载脚本并执行回调操作
2016/08/24 Javascript
javascript 判断是否是微信浏览器的方法
2016/10/09 Javascript
jQuery中animate的几种用法与注意事项
2016/12/12 Javascript
angularjs+bootstrap菜单的使用示例代码
2017/03/07 Javascript
用node.js写一个jenkins发版脚本
2019/05/21 Javascript
使用flow来规范javascript的变量类型
2019/09/12 Javascript
js实现无限瀑布流实例方法
2019/09/16 Javascript
js、jquery实现列表模糊搜索功能过程解析
2020/03/27 jQuery
如何使用Javascript中的this关键字
2020/05/28 Javascript
python类继承用法实例分析
2015/05/27 Python
Linux RedHat下安装Python2.7开发环境
2017/05/20 Python
Python 基础教程之闭包的使用方法
2017/09/29 Python
Python实现随机创建电话号码的方法示例
2018/12/07 Python
python3.4 将16进制转成字符串的实例
2019/06/12 Python
django框架model orM使用字典作为参数,保存数据的方法分析
2019/06/24 Python
悦木之源美国官网:Origins美国
2016/08/01 全球购物
Mountain Warehouse澳大利亚官网:欧洲家庭户外品牌倡导者
2016/11/20 全球购物
Sam’s Club山姆会员商店:沃尔玛旗下高端会员制商店
2017/01/16 全球购物
高中生家长会演讲稿
2014/01/14 职场文书
创先争优活动方案
2014/02/12 职场文书
大学生精神文明先进个人事迹材料
2014/05/02 职场文书
安全生产演讲稿
2014/05/09 职场文书
陕西导游词
2015/02/04 职场文书
大学教师个人总结
2015/02/10 职场文书
Mysql MVCC机制原理详解
2021/04/20 MySQL
Python实现简繁体转换
2021/06/07 Python
Python中递归以及递归遍历目录详解
2021/10/24 Python