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 相关文章推荐
Python写的服务监控程序实例
Jan 31 Python
Python字符串详细介绍
May 09 Python
python判断字符串是否是json格式方法分享
Nov 07 Python
python实现图片批量压缩程序
Jul 23 Python
Python进程间通信Queue消息队列用法分析
May 22 Python
python 矢量数据转栅格数据代码实例
Sep 30 Python
Ranorex通过Python将报告发送到邮箱的方法
Jan 12 Python
python读取tif图片时保留其16bit的编码格式实例
Jan 13 Python
python实现滑雪者小游戏
Feb 22 Python
Python3中小括号()、中括号[]、花括号{}的区别详解
Nov 15 Python
python中spy++的使用超详细教程
Jan 29 Python
python-opencv 中值滤波{cv2.medianBlur(src, ksize)}的用法
Jun 05 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.ini中添加extension=php_mysqli.dll指令的说明
2007/06/14 PHP
PHP 在线翻译函数代码
2009/05/07 PHP
PHP中操作ini配置文件的方法
2013/04/25 PHP
浅谈php命令行用法
2015/02/04 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
2015/11/05 PHP
Swoole-1.7.22 版本已发布,修复PHP7相关问题
2015/12/31 PHP
Zend Framework过滤器Zend_Filter用法详解
2016/12/09 PHP
php+webSoket实现聊天室示例代码(附源码)
2017/02/17 PHP
EXT中xtype的含义分析
2010/01/07 Javascript
Javascript学习笔记4 Eval函数
2010/01/11 Javascript
js常用排序实现代码
2010/12/28 Javascript
js 获取后台的字段 改变 checkbox的被选中的状态 代码
2013/06/05 Javascript
常用js字符串判断方法整理
2013/10/18 Javascript
JS获得浏览器版本和操作系统版本的例子
2014/05/13 Javascript
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
js获取字符串字节数方法小结
2015/06/09 Javascript
springmvc接收jquery提交的数组数据代码分享
2017/10/28 jQuery
JS交互点击WKWebView中的图片实现预览效果
2018/01/05 Javascript
JS数组去重的6种方法完整实例
2018/12/08 Javascript
js键盘事件实现人物的行走
2020/01/17 Javascript
vant 自定义 van-dropdown-item的用法
2020/08/05 Javascript
JS实现简易日历效果
2021/01/25 Javascript
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
python制作企业邮箱的爆破脚本
2016/10/05 Python
Python3.7 新特性之dataclass装饰器
2019/05/27 Python
Python hexstring-list-str之间的转换方法
2019/06/12 Python
python实现替换word中的关键文字(使用通配符)
2020/02/13 Python
CSS3实现跳动的动画效果
2016/09/12 HTML / CSS
Data URI scheme详解和使用实例及图片base64编码实现方法
2014/05/08 HTML / CSS
使用分层画布来优化HTML5渲染的教程
2015/05/08 HTML / CSS
AmazeUI 缩略图的实现示例
2020/08/18 HTML / CSS
DJI大疆德国官方商城:大疆无人机
2018/09/01 全球购物
期末总结的个人自我评价
2013/11/02 职场文书
十佳青年事迹材料
2014/08/21 职场文书
古诗之感恩老师
2019/10/24 职场文书
Redis Lua脚本实现ip限流示例
2022/07/15 Redis