使用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实现方法
Nov 18 Python
Python中的集合类型知识讲解
Aug 19 Python
Python内置函数 next的具体使用方法
Nov 24 Python
Python 在字符串中加入变量的实例讲解
May 02 Python
Python基于Floyd算法求解最短路径距离问题实例详解
May 16 Python
Python实现string字符串连接的方法总结【8种方式】
Jul 06 Python
Python 多线程不加锁分块读取文件的方法
Dec 11 Python
实时获取Python的print输出流方法
Jan 07 Python
Python3中exp()函数用法分析
Feb 19 Python
详解python中的线程与线程池
May 10 Python
anaconda如何查看并管理python环境
Jul 05 Python
python filecmp.dircmp实现递归比对两个目录的方法
May 22 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获得文件扩展名三法
2006/11/25 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
javascript 动态加载 css 方法总结
2009/07/11 Javascript
使用forever管理nodejs应用教程
2014/06/03 NodeJs
使用mouse事件实现简单的鼠标经过特效
2015/01/30 Javascript
JavaScript插件化开发教程(五)
2015/02/01 Javascript
基于javascript html5实现多文件上传
2016/03/03 Javascript
工作中常用的js、jquery自定义扩展函数代码片段汇总
2016/12/22 Javascript
html5 canvas 详细使用教程
2017/01/20 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
看看“疫苗查询”小程序有温度的代码
2018/07/31 Javascript
微信小程序页面间值传递的两种方法
2018/11/26 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
2019/05/27 jQuery
JS工厂模式开发实践案例分析
2019/10/17 Javascript
JS动态显示倒计时效果
2019/12/12 Javascript
python socket 超时设置 errno 10054
2014/07/01 Python
尝试使用Python多线程抓取代理服务器IP地址的示例
2015/11/09 Python
Python实现的径向基(RBF)神经网络示例
2018/02/06 Python
python处理数据,存进hive表的方法
2018/07/04 Python
tensorflow saver 保存和恢复指定 tensor的实例讲解
2018/07/26 Python
从0开始的Python学习016异常
2019/04/08 Python
python之array赋值技巧分享
2019/11/28 Python
Pytorch 实现权重初始化
2019/12/31 Python
html5 音乐播放器 audio 标签使用概述
2013/07/15 HTML / CSS
HTML5 canvas画矩形时出现边框样式不一致的解决方法
2013/10/14 HTML / CSS
护士自荐信怎么写
2013/10/18 职场文书
乌鸦喝水教学反思
2014/02/07 职场文书
清扬洗发水广告词
2014/03/14 职场文书
警校毕业生自我评价
2014/04/06 职场文书
片区教研活动总结
2014/07/02 职场文书
动画设计系毕业生求职信
2014/07/15 职场文书
幼儿园教师师德师风演讲稿:爱我所爱 无悔青春
2014/09/10 职场文书
品质保证书格式
2015/02/28 职场文书
小学语文教师竞聘演讲稿范文
2019/08/09 职场文书
如何利用opencv判断两张图片是否相同详解
2021/07/07 Python
Minikube搭建Kubernetes集群
2022/03/31 Servers