使用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检测网页是否有日常链接
Jun 03 Python
python利用datetime模块计算时间差
Aug 04 Python
Python在信息学竞赛中的运用及Python的基本用法(详解)
Aug 15 Python
Linux下python与C++使用dlib实现人脸检测
Jun 29 Python
面向初学者的Python编辑器Mu
Oct 08 Python
python实现嵌套列表平铺的两种方法
Nov 08 Python
解决django-xadmin列表页filter关联对象搜索问题
Nov 15 Python
Python实现图像去噪方式(中值去噪和均值去噪)
Dec 18 Python
Pycharm配置PyQt5环境的教程
Apr 02 Python
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
Nov 22 Python
python 6种方法实现单例模式
Dec 15 Python
Pytorch 图像变换函数集合小结
Feb 01 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
基于mysql的论坛(2)
2006/10/09 PHP
NO3第三帝国留言簿制作过程
2006/10/09 PHP
PHP5与MySQL数据库操作常用代码 收集
2010/03/21 PHP
php中取得文件的后缀名?
2012/02/20 PHP
实用的PHP带公钥加密类分享(每次加密结果都不一样哦)
2014/08/20 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
2016/07/07 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册
2016/12/27 PHP
PHP那些琐碎的知识点(整理)
2017/05/20 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
2017/08/07 PHP
PHP一个简单的无需刷新爬虫
2019/01/05 PHP
Vagrant(WSL)+PHPStorm+Xdebu 断点调试环境搭建
2019/12/13 PHP
jQuery实现的Email中的收件人效果(按del键删除)
2011/03/20 Javascript
javascript如何创建表格(javascript绘制表格的二种方法)
2013/12/10 Javascript
JavaScript中的类数组对象介绍
2014/12/30 Javascript
基于JavaScript实现仿京东图片轮播效果
2015/11/06 Javascript
AngularJS动态菜单操作指令
2017/04/25 Javascript
JS实现获取汉字首字母拼音、全拼音及混拼音的方法
2017/11/14 Javascript
Vue中Quill富文本编辑器的使用教程
2018/09/21 Javascript
对Layer UI 模块化的用法详解
2019/09/26 Javascript
webpack3升级到webpack4遇到问题总结
2019/09/30 Javascript
vue实现在线预览pdf文件和下载(pdf.js)
2019/11/26 Javascript
Javascript实现鼠标点击冒泡特效
2019/12/24 Javascript
Python内置函数Type()函数一个有趣的用法
2015/02/18 Python
Python实现读取TXT文件数据并存进内置数据库SQLite3的方法
2017/08/08 Python
python如何派生内置不可变类型并修改实例化行为
2018/03/21 Python
python实现键盘输入的实操方法
2019/07/16 Python
pycharm重命名文件的方法步骤
2019/07/29 Python
django写用户登录判定并跳转制定页面的实例
2019/08/21 Python
python实现批量转换图片为黑白
2020/06/16 Python
如何基于Python pygame实现动画跑马灯
2020/11/18 Python
EMU Australia澳大利亚官网:澳大利亚本土雪地靴品牌
2019/07/24 全球购物
有abstract方法的类一定要用abstract修饰吗
2016/03/14 面试题
2014年幼儿园小班工作总结
2014/12/04 职场文书
2015年财务试用期工作总结
2014/12/24 职场文书
详解Python如何批量采集京东商品数据流程
2022/01/22 Python