Python cookbook(数据结构与算法)从任意长度的可迭代对象中分解元素操作示例


Posted in Python onFebruary 13, 2018

本文实例讲述了python从任意长度的可迭代对象中分解元素操作。分享给大家供大家参考,具体如下:

从某个可迭代对象中分解出N个元素,但是可迭代对象的长度可能超过N,会出现“分解值过多”的异常;

使用“*表达式”来解决该问题:

Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> *headdata,current=[10,3,2,6,8,5] #*修饰的变量位于列表第一个位置,轻松分别头部和尾部
>>> headdata
[10, 3, 2, 6, 8]
>>> current
5
>>> record=('dave','dave@example.com','773-555-1212','847-555-1212')
>>> name,email,*phone_numbers=record#*修饰的变量位于列表最后一个位置
>>> name
'dave'
>>> email
'dave@example.com'
>>> phone_numbers
['773-555-1212', '847-555-1212']
>>> line='nobody:*:-2:-3:Unpriviledged User:/var/empty:/usr/bin/false'
>>> uname,*fields,homedir,sh=line.split(':') #*修饰的变量位于中间位置,且与字符串处理操作相结合
>>> uname
'nobody'
>>> homedir
'/var/empty'
>>> sh
'/usr/bin/false'
>>> fields
['*', '-2', '-3', 'Unpriviledged User']
>>> record=['lucy',50,123.4,(12,13,2016)]
>>> name,*_,(*_,year)=record #将某些分解出的值丢弃
>>> name
'lucy'
>>> year
2016
>>>

*式用法在迭代一个变长的元组序列时尤其有用:

Python cookbook(数据结构与算法)从任意长度的可迭代对象中分解元素操作示例

(代码摘自《Python Cookbook》)

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
解决python3在anaconda下安装caffe失败的问题
Jun 15 Python
python实现八大排序算法(1)
Sep 14 Python
Python实现PS图像调整颜色梯度效果示例
Jan 25 Python
python实现微信发送邮件关闭电脑功能
Feb 22 Python
浅谈Python中的作用域规则和闭包
Mar 20 Python
浅谈Python 多进程默认不能共享全局变量的问题
Jan 11 Python
python读取图片任意范围区域
Jan 23 Python
详解python tkinter教程-事件绑定
Mar 28 Python
Django发送邮件功能实例详解
Sep 02 Python
完美解决jupyter由于无法import新包的问题
May 26 Python
python四个坐标点对图片区域最小外接矩形进行裁剪
Jun 04 Python
python中filter,map,reduce的作用
Jun 10 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
Feb 13 #Python
Python内置模块ConfigParser实现配置读写功能的方法
Feb 12 #Python
Python内置模块hashlib、hmac与uuid用法分析
Feb 12 #Python
20个常用Python运维库和模块
Feb 12 #Python
使用python实现BLAST
Feb 12 #Python
Python内置模块logging用法实例分析
Feb 12 #Python
Request的中断和ErrorHandler实例解析
Feb 12 #Python
You might like
php动态实现表格跨行跨列实现代码
2012/11/06 PHP
php和javascript之间变量的传递实现代码
2012/12/19 PHP
PHP中你应该知道的require()文件包含的正确用法
2015/06/12 PHP
php实现文件上传及头像预览功能
2017/01/15 PHP
PHP使用imagick扩展实现合并图像的方法
2017/04/25 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
2017/06/27 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
2018/11/20 PHP
PHP中$GLOBALS与global的区别详解
2019/03/21 PHP
php下的原生ajax请求用法实例分析
2020/02/28 PHP
php输出形式实例整理
2020/05/05 PHP
JavaScript制作的可折叠弹出式菜单示例
2014/04/04 Javascript
JavaScript代码编写中各种各样的坑和填坑方法
2014/06/06 Javascript
JS中的form.submit()不能提交表单的错误原因
2014/10/08 Javascript
JS 新增Cookie 取cookie值 删除cookie 举例详解
2014/10/10 Javascript
javascript框架设计读书笔记之种子模块
2014/12/02 Javascript
使用js画图之饼图
2015/01/12 Javascript
jq实现左侧显示图片右侧文字滑动切换效果
2015/08/04 Javascript
JavaScript常用代码书写规范的超全面总结
2016/09/11 Javascript
基于React实现表单数据的添加和删除详解
2017/03/14 Javascript
JS实现禁止高频率连续点击的方法【基于ES6语法】
2017/04/25 Javascript
Nuxt.js实战详解
2018/01/18 Javascript
微信小程序实现文字跑马灯效果
2020/05/26 Javascript
Node.js搭建WEB服务器的示例代码
2018/08/15 Javascript
javacript replace 正则取字符串中的值并替换【推荐】
2018/09/13 Javascript
jquery 键盘事件 keypress() keydown() keyup()用法总结
2019/10/23 jQuery
vue 解决computed修改data数据的问题
2019/11/06 Javascript
Python 自动补全(vim)
2014/11/30 Python
详解Python中for循环的使用方法
2015/05/14 Python
Keras 切换后端方式(Theano和TensorFlow)
2020/06/19 Python
Python利用pip安装tar.gz格式的离线资源包
2020/09/14 Python
python 星号(*)的多种用途
2020/09/21 Python
解决pytorch下出现multi-target not supported at的一种可能原因
2021/02/06 Python
求职简历中的自我评价分享
2013/12/08 职场文书
会计系个人求职信范文分享
2013/12/20 职场文书
怎样写演讲稿
2014/01/04 职场文书
公司董事长助理工作职责
2014/07/12 职场文书