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代码编写的5个优化技巧
Nov 16 Python
Python实现将HTML转换成doc格式文件的方法示例
Nov 20 Python
Python中修改字符串的四种方法
Nov 02 Python
python多进程下实现日志记录按时间分割
Jul 22 Python
python中的global关键字的使用方法
Aug 20 Python
在Python中预先初始化列表内容和长度的实现
Nov 28 Python
Pycharm 2020最新永久激活码(附最新激活码和插件)
Sep 17 Python
使用 Python 在京东上抢口罩的思路详解
Feb 27 Python
Python flask框架实现浏览器点击自定义跳转页面
Jun 04 Python
Python descriptor(描述符)的实现
Nov 15 Python
用python实现一个简单的验证码
Dec 09 Python
详解用selenium来下载小姐姐图片并保存
Jan 26 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 计算代码执行耗时的代码修正网上普遍错误
2011/05/14 PHP
yii框架配置默认controller和action示例
2014/04/30 PHP
使用PHP破解防盗链图片的一个简单方法
2014/06/07 PHP
php中字符串和正则表达式详解
2014/10/23 PHP
PHP与SQL语句常用大全
2016/12/10 PHP
常用PHP封装分页工具类
2017/01/14 PHP
php获取数据库结果集方法(推荐)
2017/06/01 PHP
PHP随机数函数rand()与mt_rand()的讲解
2019/03/25 PHP
游览器中javascript的执行过程(图文)
2012/05/20 Javascript
JavaScript基于ajax编辑信息用法实例
2015/07/15 Javascript
jQuery实现列表内容的动态载入特效
2015/08/08 Javascript
JavaScript中的call方法和apply方法使用对比
2015/08/12 Javascript
AngularJS实现全选反选功能
2015/12/08 Javascript
jQuery div拖拽用法实例
2016/01/14 Javascript
angularjs $http实现form表单提交示例
2017/06/09 Javascript
VUE实时监听元素距离顶部高度的操作
2020/07/29 Javascript
[03:22]DSPL第一期精彩集锦:酷炫到底!
2014/11/07 DOTA
Python中为什么要用self探讨
2015/04/14 Python
Python中正则表达式详解
2017/05/17 Python
PyQt5每天必学之事件与信号
2018/04/20 Python
Python SQL查询并生成json文件操作示例
2018/08/17 Python
Python3 venv搭建轻量级虚拟环境的步骤(图文)
2019/08/09 Python
Django stark组件使用及原理详解
2019/08/22 Python
Python3.7实现验证码登录方式代码实例
2020/02/14 Python
python使用PIL剪切和拼接图片
2020/03/23 Python
Python如何通过百度翻译API实现翻译功能
2020/04/02 Python
解决python 虚拟环境删除包无法加载的问题
2020/07/13 Python
加拿大在线眼镜零售商:SmartBuyGlasses加拿大
2019/05/25 全球购物
工程专业应届生求职信
2014/02/19 职场文书
反邪教宣传工作方案
2014/05/07 职场文书
自愿离婚协议书范本
2014/09/13 职场文书
办公室主任个人总结
2015/02/28 职场文书
优秀教师主要事迹材料
2015/11/04 职场文书
JavaScript嵌入百度地图API的最详细方法
2021/04/16 Javascript
js之ajax文件上传
2021/05/13 Javascript
JS实现简单的九宫格抽奖
2022/06/28 Javascript