使用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正则表达式匹配ip地址实例
Oct 09 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
Dec 14 Python
python3 flask实现文件上传功能
Mar 20 Python
Python字符串的一些操作方法总结
Jun 10 Python
Python当中的array数组对象实例详解
Jun 12 Python
matlab中imadjust函数的作用及应用举例
Feb 27 Python
tensorflow下的图片标准化函数per_image_standardization用法
Jun 30 Python
python如何用matplotlib创建三维图表
Jan 26 Python
Python使用openpyxl复制整张sheet
Mar 24 Python
python控制台打印log输出重复的解决方法
May 14 Python
Python将CSV文件转化为HTML文件的操作方法
Jun 30 Python
Python中的datetime包与time包包和模块详情
Feb 28 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 pack与unpack 摸板字符字符含义
2009/10/29 PHP
ThinkPHP快速入门实例教程之数据分页
2014/07/01 PHP
PHP fastcgi模式上传大文件(大约有300多K)报错
2014/09/28 PHP
PHP-FPM 的管理和配置详解
2019/02/17 PHP
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
JS 动态加载脚本的4种方法
2009/05/05 Javascript
Javascript的常规数组和关联数组对比小结
2012/05/24 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
JavaScript对IE操作的经典代码(推荐)
2014/03/10 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
2015/06/24 Javascript
javascript常用的方法整理
2015/08/20 Javascript
bootstrap实现弹窗和拖动效果
2016/01/03 Javascript
AngularJS ng-style中使用filter
2016/09/21 Javascript
微信小程序 Storage API实例详解
2016/10/02 Javascript
jquery实现全选、全不选以及单选功能
2017/03/23 jQuery
vue draggable resizable gorkys与v-chart使用与总结
2019/09/05 Javascript
vue-cli3 热更新配置操作
2020/09/18 Javascript
python实现挑选出来100以内的质数
2015/03/24 Python
详解python使用递归、尾递归、循环三种方式实现斐波那契数列
2018/01/16 Python
python使用tkinter实现简单计算器
2018/01/30 Python
Python爬虫框架Scrapy实例代码
2018/03/04 Python
python书籍信息爬虫实例
2018/03/19 Python
Python使用numpy模块创建数组操作示例
2018/06/20 Python
idea创建springMVC框架和配置小文件的教程图解
2018/09/18 Python
python字符串Intern机制详解
2019/07/01 Python
Python 操作 ElasticSearch的完整代码
2019/08/04 Python
基于Python爬取京东双十一商品价格曲线
2020/10/23 Python
Jogun Shop中文官网:韩国知名时尚男装网站
2016/10/12 全球购物
美国在线面料商店:Fashion Fabrics Club
2020/01/31 全球购物
新闻网站实习自我鉴定
2013/09/25 职场文书
入党自我评价优缺点
2014/01/25 职场文书
科技节口号
2014/06/19 职场文书
奖励通知
2015/04/22 职场文书
好段摘抄大全(48句)
2019/08/08 职场文书
OpenCV绘制圆端矩形的示例代码
2021/08/30 Python
在CSS中使用when/else的方法
2022/01/18 HTML / CSS