【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)

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CHIMA专访美创高级总监丁斐:为医疗数据安全构筑体系化防御新机制

5月17-19日,中国医院信息网络大会(CHIMA 2024)在南京隆重召开。作为结识多年的老友,美创科技再携以数据为中心的全系列安全业务、新一代数字化安全平台、医疗行业解决方案精彩亮相。 会议期间,CHIMA专访美创科技&…

金融反欺诈指南:车险欺诈为何如此猖獗?

目录 车险欺诈猖獗的原因 车险欺诈的识别难点 多重合作打击车险欺诈 保险企业需要提升反欺诈能力 监管部门需要加强协同合作 青岛市人民检察院在其官方微信公众号上发布的梁某保险诈骗案显示,2020 年以来,某汽修厂负责人梁某、某汽车服务公司负责人孙某&…

精通推荐算法7:多任务学习 -- 总体架构

1 多任务学习的总体架构 目前的互联网主流推荐场景在大多数情况下需要优化多个业务目标。例如在淘宝商品推荐中,需要兼顾点击率和转化率。在抖音短视频推荐中,需要考虑完播率、播放时长、点赞率、评论率、关注率等目标。为了提升各项业务目标&#xff0…

光栅幅值细分原理与实现

本文介绍光栅幅值细分原理与实现。 光栅是工业测量领域中常见的传感器,如下图。主要厂家有雷尼绍,海德汉,配套的光栅读数头有模拟信号的,也有直接细分输出数字脉冲的,本文的细分针对模拟信号,即有正弦信号…

数字化业务流程升级再造,解困基本半导体的CRM应用5年之痒

在新能源汽车、工业互联、5G通信、消费电子等需求的强力拉动下,以碳化硅为代表的第三代半导体产业迎来爆发式增长。 深圳基本半导体有限公司(以下简称“基本半导体”)是中国第三代半导体创新企业,专业从事碳化硅功率器件的研发与…

NineData 联合创始人周振兴将参加开源数据库技术沙龙,并和 PolarDB 开源社区一起去娃哈哈带来主题分享!

5月31日(周五),PolarDB 开源社区将联合娃哈哈集团共同举办开源数据库技术沙龙!NineData 联合创始人周振兴受邀参加,并将分享《NineData,Any to Any 数据复制之路》的技术分享。 本次活动汇聚了 PolarDB 产品…

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

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

面向对象编程:坦克飞机大战游戏的重构之旅

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、面向对象编程思想入门 坦克对象的定义 属性与行为方法的实现 二、面向过程与面向对象…

子网划分案例

4.2子网划分 “有类编址”的地址划分过于死板,划分的颗粒度太大,会有大量的主机号不能被充分利用,从而造成了大量的IP地址资源浪费。因此可以利用子网划分来减少地址浪费,即VLSM (Variable Length Subnet Mask),可变长…

python清洗苹果产量数据:从字符串到整型的转化

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、引言 二、使用普通方法清洗数据 1. 创建字典并遍历 2. 示例代码 3. 结果展示 三、使…

WAMP无法启动mysql

一种原因是原来安装过mysql,mysql默认是自启动的,而WAMP内置mysql会发生冲突,所以 解决方法: winR 输入 services.msc 将mysql关闭,并设为手动模式

Java是长连接

Java是长连接,springboot进程被结束才断开 一个连接池有10个连接,2个并发会占用2个连接,用完之后归还给连接池 springboot服务用户的是线程池,返回结果之后,线程自动归还到线程池。跟php机制不一样 php是短链接&am…

【Leetcode 206】 反转链表——此递归相当妙啊

题目 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1]示例 2: 输入:head [1,2] 输出:[2,1]示例 3: …

重学java 51.Collections集合工具类、泛型

"我已不在地坛&#xff0c;地坛在我" —— 《想念地坛》 24.5.28 一、Collections集合工具类 1.概述:集合工具类 2.特点: a.构造私有 b.方法都是静态的 3.使用:类名直接调用 4.方法: static <T> boolean addAll(collection<? super T>c,T... el…

.net JQ AJAX 请求 FromBody 接收格式

$.ajax({ url: “/api/banchang/EmpTble/Login2”, type: ‘Post’, data: JSON.stringify({ Emppassword: pass, EmpName: name }), contentType: ‘application/json’, beforeSend: function () { // 禁用按钮防止重复提交 /* $(“#create”).attr({ disabled: “disabled”…

同一个类中方法调用,导致@Transactional失效

1.背景 查了一下Spring文档&#xff0c;就是上面这段话所说的情况。 2.Spring官方文档有这么一段话 https://docs.spring.io/spring-framework/docs/current/reference/html/data-access.html#transaction-declarative In proxy mode (which is the default), only external …

经典获奖案例 | 度小满互联网金融开源软件治理解决方案

近日&#xff0c;广东省粤港澳合作促进会金融专业委员会和粤港澳大湾区金融创新研究院在广州联合举办“2024年粤港澳大湾区数智金融峰会暨第二届金融创新优秀应用案例与解决方案技术成果授牌仪式”。《度小满互联网金融开源软件治理解决方案》从数百个申报项目中脱颖而出&#…

基于心电疾病分类的深度学习模型部署应用于OrangePi Kunpeng Pro开发板

一、开发板资源介绍 该板具有4核心64位的处理器和8TOPS的AI算力&#xff0c;让我们验证一下&#xff0c;在该板上跑深度学习模型的效果如何&#xff1f; 二、配网及远程SSH登录访问系统 在通过microusb连接串口进入开发板调试&#xff0c;在命令行终端执行以下命令 1&#…

Docker安装MySQL的详细教程

1. 拉取MySQL镜像 拉取MySQL镜像。您可以指定版本号&#xff0c;例如5.7或8.0&#xff0c;如果不指定&#xff0c;默认会拉取最新稳定版。 docker pull mysql:5.7或者&#xff0c;使用最新版本&#xff1a; docker pull mysql:latest2. 运行MySQL容器 拉取镜像完成后&#…

C++ 进阶(3)虚函数表解析

个人主页&#xff1a;仍有未知等待探索-CSDN博客 专题分栏&#xff1a;C 请多多指教&#xff01; 目录 一、虚函数表 二、单继承&#xff08;无虚函数覆盖&#xff09; 继承关系表&#xff1a; 对于实例&#xff1a;derive d 的虚函数表&#xff1a; 对于实例&#xff1a;b…