【python cookbook】【数据结构与算法】2 从任意长度的可迭代对象中分解元素
2023-09-14 08:59:27 时间
从某个可迭代对象中分解出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=('小明','xiaoming@163.com','13288888888','13566666666') >>> name,email,*phone_numbers=record#*修饰的变量位于列表最后一个位置 >>> name '小明' >>> email 'xiaoming@163.com' >>> phone_numbers ['13288888888', '13566666666'] >>> 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语言有哪些数据类型「建议收藏」
- python调试工具ipdb基本命令
- python hashlib_Python hashlib模块实例使用详解
- python爬虫—–Python访问http的几种方式「建议收藏」
- python自学基础1week
- python写helloworld代码_helloworld代码怎么写?
- Python 技巧篇-pip卸载python库实例演示,查看pip命令大全方法[通俗易懂]
- 【说站】python类变量和实例变量的对比
- Python:函数的定义、参数传入与函数的调用
- python win32api sendmessage_Python win32api.SendMessage方法代码示例[通俗易懂]
- Python 生成随机数_python 随机字符串
- python递归函数讲解_Python递归函数实例讲解
- Python 元组和集合
- 改进的自适应中值滤波算法 去除椒盐噪声 python 代码实现
- Python人工智能:基于sklearn的随机森林分类算法实现方法
- Python 自动化指南(繁琐工作自动化)第二版:一、PYTHON 基础知识
- python抛出异常语句
- python-Python与MongoDB数据库-使用Python执行MongoDB查询(一)
- Python实现简单的web服务器详解编程语言
- 简单的电子邮件爬虫Python代码详解编程语言
- H2O中的随机森林算法介绍及其项目实战(python实现)详解大数据
- Python 调度算法 死锁 静动态链接(七)详解编程语言
- Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)详解编程语言
- 如何使用Python安装MySQL(python安装mysql)
- 一步步学习:利用Python连接MySQL数据库(python连接mysql数据库)
- Python玩转Redis:提升缓存效率(python使用redis)
- 8 个用于业余项目的优秀 Python 库
- python算法排序实现快速排序
- python操作mysql中文显示乱码的解决方法
- Python算法之栈(stack)的实现
- Python写的服务监控程序实例