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 相关文章推荐
wxpython中利用线程防止假死的实现方法
Aug 11 Python
Python的Flask框架标配模板引擎Jinja2的使用教程
Jul 12 Python
Python3.4 splinter(模拟填写表单)使用方法
Oct 13 Python
python实现远程控制电脑
May 23 Python
pyqt5 实现在别的窗口弹出进度条
Jun 18 Python
python把ipynb文件转换成pdf文件过程详解
Jul 09 Python
django-rest-swagger的优化使用方法
Aug 29 Python
python3多线程知识点总结
Sep 26 Python
Python 实现数组相减示例
Dec 27 Python
nginx搭建基于python的web环境的实现步骤
Jan 03 Python
Python3.9又更新了:dict内置新功能
Feb 28 Python
python简单实现最大似然估计&scipy库的使用详解
Apr 15 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
德生9700DX电路分析
2021/03/02 无线电
IIS下配置Php+Mysql+zend的图文教程
2006/12/08 PHP
php 缩略图实现函数代码
2011/06/23 PHP
php多重接口的实现方法
2015/06/20 PHP
深入讲解PHP的对象注入(Object Injection)
2017/03/01 PHP
PHP运用foreach神奇的转换数组(实例讲解)
2018/02/01 PHP
PHP替换Word中变量并导出PDF图片的实现方法
2020/11/26 PHP
JavaScript使用Math.Min返回两个数中较小数的方法
2015/04/06 Javascript
检查表单元素的值是否为空的实例代码
2016/06/16 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
Javascript下拉刷新的简单实现
2017/02/14 Javascript
Angular 2父子组件数据传递之@Input和@Output详解(下)
2017/07/05 Javascript
echarts饼图扇区添加点击事件的实例
2017/10/16 Javascript
详解Nodejs mongoose
2018/06/10 NodeJs
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
2018/10/31 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
vue中的inject学习教程
2019/04/24 Javascript
弱类型语言javascript开发中的一些坑实例小结【变量、函数、数组、对象、作用域等】
2019/08/07 Javascript
Linux下Python获取IP地址的代码
2014/11/30 Python
python实现获取客户机上指定文件并传输到服务器的方法
2015/03/16 Python
Python中顺序表的实现简单代码分享
2018/01/09 Python
python2 与python3的print区别小结
2018/01/16 Python
解决在pycharm中显示额外的 figure 窗口问题
2019/01/15 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
python标准库os库的函数介绍
2020/02/12 Python
墨西哥购物网站:Elektra
2020/01/21 全球购物
中医专业职业生涯规划书范文
2014/01/04 职场文书
个人简历自我评价范文
2014/02/04 职场文书
大学生社会实践评语
2014/04/25 职场文书
测控技术自荐信
2014/06/05 职场文书
2014县政府领导班子对照检查材料思想汇报
2014/09/25 职场文书
2015年工会工作总结
2015/03/30 职场文书
2015年小学语文工作总结
2015/05/25 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python
golang三种设计模式之简单工厂、方法工厂和抽象工厂
2022/04/10 Golang