【Python Cookbook】S01E02 从任意长度的可迭代对象中分解元素

目录

  • 问题
  • 解决方案
  • 讨论

问题

从某个不确定长度的迭代对象中分解出 N N N 个元素。

解决方案

*分解操作和各种函数式语言中的列表处理功能有着一定的相似性。例如,如果有一个列表,可以像下面这样轻松将其分解为头部和尾部。

scores = [99, 97, 91, 89, 88.5, 81, 79]
head, *tails = scores
print(head)
print(tails)

讨论

对于分解未知或者任意长度的可迭代对象,这种扩展分解操作可谓量身定制。比如在如下案例中,*tags 作为参数部分,轻松对模式和数量不定的参数进行分割。

records = [('foo', 1, 2),('bar', "hello"),('foo', 3, 4),('chat', "Hi", 2.5)
]def do_foo(x, y):print('foo', x+y)def do_bar(s):print('bar', s)for tag, *args in records:if tag == 'foo':do_foo(*args)elif tag == 'bar':do_bar(*args)

当和某些特定的字符串处理操作相结合时,*式语法分解操作也非常有效,比如:

line = 'nobody:*:-2:-2:Unprivileged User:/var/empty:/usr/bin/false'
uname, *fields, homedir, sh = line.split(":")
print(uname)
print(homedir)
print(sh)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/844367.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Java】HOT100+代码随想录:动态规划(下)

目录 三、打家劫舍 LeetCode198:打家劫舍 LeetCode213:打家劫舍ii LeetCode337:打家劫舍iii(树形) 四、股票问题 时间不多了,其他的先不写了 LeetCode121:买卖股票的最佳时机 五、子序列…

Plesk面板上网站无法访问如何查看日志

近期我的网站出现无法访问的问题,这边想要查询为什么出现无法访问的原因,但不知道如何在主机上面进行检查,由于我使用的Hostease的Windows虚拟主机产品默认带普通用户权限的Plesk面板,因此联系Hostease的咨询了Hostease技术支持&a…

建立FTP服务器

文章目录 建立FTP服务器1. 使用VMware安装CentOS 7虚拟机。2. 安装完虚拟机后,进入虚拟机,修改网络配置(onboot改为yes)并重启网络服务,查看相应IP地址,并使用远程连接软件进行连接。3.配置yum源&#xff0…

能芯(EnChip)模拟芯片应用和选型

数据显示,超过60%的驾驶者会在开车时听音乐,这不仅可以提高驾驶者的注意力,还可以缓解驾驶过程中产生的疲劳和压力,特别是在长途驾驶或交通拥堵时尤其明显。基于音乐欣赏,高保真音质是音响系统的核心指标之一&#xff…

高考前很焦虑?看看罗永浩提的三个建议!罗永浩推荐的随身WiFi居然蕴含这样的商机?2024普通人如何翻身?

你能相信现如今身家过亿的老罗罗永浩高中就辍学了吗?相信很多人都不敢置信吧。罗永浩无论是表现出来的口才、情商还是智商,无论如何都无法让人把他和高中辍学联系起来。 而这一点似乎也是老罗人生中的一个遗憾,于是又在一年高考季的时候&…

相对位姿估计

相对位姿估计 示意图 理论推导 离线数据库: P的位置 P [ X , Y , Z ] T P[X,Y,Z]^{T} P[X,Y,Z]T 相机内参 k 1 k_{1} k1​ 安卓手机: 相机内参 k 2 k_{2} k2​ 两个像素点位置 : p 1 和 p 2 p_1和p_2 p1​和p2​ 公式一:…

为师妹写的《Java并发编程之线程池十八问》被表扬啦!

写在开头 之前给一个大四正在找工作的学妹发了自己总结的关于Java并发中线程池的面试题集,总共18题,将之取名为《Java并发编程之线程池十八问》,今天聊天时受了学妹的夸赞,心里很开心,毕竟自己整理的东西对别人起到了一点帮助,记录一下! Java并发编程之线程池十八问 经过…

5月岚庭工人大会“安全就是效率、形象即是品质”

2024年5月18日、19日岚庭一月一期的“产业工人大会”和“工程大会”圆满举行初夏正当时,此次大会主要围绕“安全”与“形象”展开六场专题培训只为精益求精产业工人和装修管家全体到场。 岚庭 以绝对【安全】护家护园 安全就是生命,违章就是事故&#x…

开源DMS文档管理系统 Nuxeo Vs Alfresco对比及 API 使用概述

1. 文档管理系统是什么 文档管理系统(DMS:Document Management System)是一种软件系统,用于组织、存储、检索和管理电子文档和文件。这些文件可以是各种格式的电子文档,如文本文档、电子表格、图像、音频或视频文件等…

从一维到二维:数组转换的奥秘与应用

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、引言:数组转换的魅力 二、一维数组转二维数组的基础方法 1. 确定二维数组的…

Web开发中,就session和cookie相比,用session比用cookie的优点有哪些?

在Web项目中,session和cookie都是用于存储用户数据的机制,但它们有不同的优缺点。使用session比使用cookie有以下几个主要优点: 1. 安全性更高 敏感数据保护:Session数据存储在服务器端,而不是客户端。这样&#xff…

VBA技术资料MF159:实现某个区域内的数据滚动

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套,分为初级、中级、高级三大部分,教程是对VBA的系统讲解&#…

Midjourne进阶篇 | 个性化潮玩

当Midjourney遇上潮玩,你想不到的惊艳! 前言盲盒魔法公式**01.嘻哈潮玩****02.荧光猫少女****03.古风剑侠****04.音乐节少年****05.Q版古风少女** 总结 前言 以前,制作盲盒需要专业盲盒设计师完成,对于大部分人来说,这…

2021CSP-J普及组复赛-第一题:分糖果

2021CSP-J普及组复赛 第一题: 题目: 输入: 7 16 23输出: 6思路: 这是一个简单的思考题,没有用到重要的算法 ①简单的思路即暴力方法就是利用for循环从L 到 R 遍历求出其中最大的奖励值,由于R…

【C language】统计某数中二进制1的个数

题解:统计某数中二进制1的个数(取模法 看某位是1/0法 干掉最右边的1法) 目录 1.题目2.取模法3.看某位是1/04.干掉最右边的1 1.题目 题目:设计一个程序,统计某数中二进制1的个数 2.取模法 int main() {int num 15;int count 0;while (n…

用于水利工程系统方面的传感器M-A542VR10

近几年快速发展的IC技术和计算机技术,为传感器的发展提供了良好与可靠的科学技术基础。使传感器的发展日新月益,且数字化、多功能与智能化是现代传感器发展的重要特征爱普生也在不断发展自己的传感器型号。随着水利工程技术的不断进步,传感器…

python基础知识总结(第一节)

一、python简介: Python是一种解释型,面向对象的高级语言。 Pyhton的语法和动态类型,以及解释性语言的本质,使它一跃成为多数平台上写脚本和快速开发应用的编程语言。 python语言百度百科介绍 二、Python基础语法:…

用户流失分析:如何使用Python训练一个用户流失预测模型?

引言 在当今商业环境中,客户流失分析是至关重要的一环。随着市场竞争的加剧,企业需要更加注重保持现有客户,并深入了解他们的离开原因。本文探讨了用户流失分析的核心概念以及如何构建客户流失预测模型的案例。通过分析用户行为数据和交易模式…

失落的方舟 命运方舟台服封号严重 游戏封IP怎么办

步入《失落的方舟》(Lost Ark),这款由Smilegate精心打造的宏大规模在线角色扮演游戏(MMORPG),您将启程前往阿克拉西亚这片饱经沧桑的奇幻大陆,展开一场穿越时空的壮阔探索。在这里,一…

2023年西安交通大学校赛(E-雪中楼)

E.雪中楼 如果算出按南北的序列,再转成从低到高的编号序列,岂不是太麻烦了,幸好,没有在这方面费长时间,而是意识到,本质就是要从低到高的编号序列,所以我就按样例模拟了一下,当a[i]0…