使用 Lambda 匿名函数在 Python 中轻松地进行排序

排序是 Python 编程中的常见操作,Python 提供了许多强大的函数方法方便的完成排序功能,比如 sorted() 和 sort()。在本文中,我们将结合 lambda 函数进行排序。它被称为匿名函数,可以灵活轻松地完成各种形式的排序。

字符串列表排序

使用 sorted() 和 sort(),可以对列表中的字符串按照字母顺序进行升降序排序。

s_lst = ['AAAAA', 'BBB', 'CCCCCCCC', 'DDDDD', 'EE']
print(sorted(s_lst, reverse=True))
s_lst.sort()
print(s_lst)

使用 Lambda 函数,实现按字符串长度进行排序。以下方法默认升序排序,使用参数 reverse=True 可以实现降序排序。

Lambda 函数 与 sorted() 函数一起使用:

s_lst = ['AAAAA', 'BBB', 'CCCCCCCC', 'DDDDD', 'EE']
print(sorted(s_lst, key=lambda x: len(x)))

Lambda 函数 与 sort() 方法一起使用:

s_lst = ['AAAAA', 'BBB', 'CCCCCCCC', 'DDDDD', 'EE']
s_lst.sort(key=lambda x: len(x))
print(s_lst)

字典排序

对字典进行排序可以实现按键还是按值排序。

按键升序对字典进行排序:

d1 = {'BBB':3, 'EE':2, 'CCCCCCCC':8, 'AAAAA':5, 'DDDDDD':6}
d2 = sorted(d1.items(), key=lambda x: x[0])
print(dict(d2))

按值升序对字典进行排序:

d1 = {'BBB':3, 'EE':2, 'CCCCCCCC':8, 'AAAAA':5, 'DDDDDD':6}
d2 = sorted(d1.items(), key=lambda x: x[1])
print(dict(d2))

元组列表排序

如果列表包含的元素是元组,默认按照元组中的第一个元素进行排序,可以使用带有 lambda 函数的函数,根据第二个元素对元组列表进行排序。

t_lst = [(3, 4), (2, 7), (3, 6), (5, 2)]
t_lst2 = sorted(t_lst, key=lambda x: x[1])
print(t_lst2)

在 Python 中 lambda 函数可以灵活地融入 Python 的排序函数中,提供灵活高效的解决方案。

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

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

相关文章

前端安全防护实战:XSS、CSRF防御与同源策略详解(react 案例)

前端安全防护实战中,主要涉及三个方面:XSS (Cross-Site Scripting) 攻击的防御、CSRF (Cross-Site Request Forgery) 攻击的防御,以及浏览器的同源策略。以下是这三个方面的详细说明: XSS 防御详解 XSS 概述 XSS攻击是一种让攻…

科创板门槛升级!解析中国量子企业的上市之路与国际比拼

4月30日晚,中国证监会于发布了修订后的《科创属性评价指引(试行)》(以下简称“新指引”),该指引自发布日起正式生效。本次修订对原有指引中的部分标准进行了调整,具体如下: 1&#x…

如何用Kimi,5秒1步生成流程图

引言 在当前快节奏的工作环境中,拥有快速、专业且高效的工具不可或缺。 Kimi不仅能在5秒内生成专业的流程图(kimi),还允许实时编辑和预览,大幅简化了传统流程图的制作过程。 这种迅速的生成能力和高度的可定制性使得…

有哪些方法可以在运行时动态生成一个Java类?

使用 Java 反射 API🚩: Java 的反射 API 允许在运行时查询和操作类和对象。虽然反射 API 本身不直接提供生成新类的功能,但可以用于动态调用构造函数、方法和访问字段,这在某些情况下可以作为动态生成类的一部分。 字节码操作库&…

Day28:ElasticSearch入门、Spring整合ES、开发社区搜索功能

ElasticSearch入门 Elasticsearch简介 一个分布式的、Restful风格的搜索引擎。支持对各种类型的数据的检索(非结构化的也可以)。搜索速度快,可以提供实时的搜索服务。便于水平扩展(集群式部署),每秒可以处…

一文读懂计算机视觉4大任务:分类任务、检测任务、目标分割任务、关键点检测任务

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

算法系列--多源BFS问题

💕"对相爱的人来说,对方的心意,才是最好的房子。"💕 作者:Lvzi 文章主要内容:算法系列–多源BFS问题 大家好,今天为大家带来的是算法系列--多源BFS问题 前言: 之前我们已经学习过单源的最短路问…

【Toritoise SVN】SVN 怎么忽略文件夹下的所有文件但是不忽略文件夹本身

比如:忽略 Assets\StreamingAssets\LocalAsset文件夹下的所有文件但是不忽略LocalAsset这个文件夹 在TortoiseSVN中,你可以通过以下步骤来修改文件夹的svn:ignore属性: 打开Windows资源管理器,导航到你的工作副本中的Assets\Stre…

VMware虚拟机问题解决方案

1、运行虚拟机系统蓝屏 可能的原因有两个: 1). 虚拟机所在磁盘的空间不足 ; -------> 清理磁盘空间 。 2). 操作系统版本高, 需要适配新版本的Vmware ; ------> 卸载Vmware15版本, 安装Vmware16版本 。 2、卸载VMware的步骤 1)卸载已经安装的VMware 从控制面…

springboot集成异步调用

异步、同步 同步:在发出一个调用时,在得到调用结果之前,该调用不返回(实时处理)。----不相干的业务逻辑会阻塞一些核心的业务逻辑。 异步:在发出一个调用时,这个调用立刻返回,没有返…

8G防火墙,WAF防火墙,可抵御各种恶意请求、恶意机器人、攻击防御

8G防火墙,WAF防火墙,可抵御各种恶意请求、恶意机器人、攻击防御 经过一年多的 beta 测试,8G 防火墙已准备好在生产现场使用。因此,您可以受益于 nG 防火墙(又名 nG 黑名单)的最新发展提供的强大保护。8G 防…

源代码防泄露可以通过哪些方法实现?七种有效方法分享

在当今数字化时代,访问安全和数据安全成为企业面临的重要挑战。传统的边界防御已经无法满足日益复杂的内网办公环境,层出不穷的攻击手段已经让市场单一的防御手段黔驴技穷。当企业面临越来越复杂的网络威胁和数据泄密风险时,更需要一种综合的…

iOS审核被拒 无法添加以供审核 要开始审核流程,必须提供以下项目

iOS审核被拒 最近有小伙伴反馈上架被拒,提示如下: 无法添加以供审核 要开始审核流程,必须提供以下项目 提交以供审核时遇到意外错误。如果问题仍然存在,请联系我们 后来小伙伴解决方案是:把备案号大写改为小写。 竟…

Ansible自动化工具模块调用与playbook编写

目录 一、Ansible工作机制与特点 (一)Ansible工作机制 1. 初始化与配置 2. 编写Playbook 3. 调用模块 4. 加密敏感数据 5. 执行Playbook 6. 收集执行结果 7. 错误处理与回滚 8. 反馈与报告 (二)Ansible 的主要特点包括…

Java并发编程: Synchronized锁升级

文章目录 一、jdk8 markword实现表二、使用工具来查看锁升级 一、jdk8 markword实现表 new -> 偏向锁 -> 轻量级锁(自旋锁、自适应自旋锁)-> 重量级锁: 偏向锁和轻量级锁都是用户空间完成的。重量级锁是需要向内核申请的。 synchr…

深度学习之基于Matlab神经网络的活体人脸和视频人脸识别系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 人脸识别技术作为生物识别技术的一种,近年来得到了广泛的关注和应用。与传统的身份认证方…

高素质高学历婚恋相亲交友平台有哪些?分享我的网上找对象成功脱单经历!

尽管觉得在社交软件上找到真爱的可能性很小,但我却时常看到别人成功的案例,这也让我跃跃欲试了。没想到,我真的成功了!以下是我亲身使用过的一些方法,在此与大家分享,仅供参考哦! 👉…

新手做抖音小店多久能出单?新手抖音小店出单秘籍!出单教程必看

大家好,我是电商花花。 现阶段还是有很多朋友加入到抖音电商行业,因为抖音小店上还隐藏很多的红利和市场,很多新手开店后第一个问题就是,店铺开通后,一般多久能出单? 多久能出单,其实更看重的…

解决方案:应对文本数据超限处理的有效策略

在处理大规模文本数据时,经常会遇到数据量超出系统、软件或工具处理能力上限的挑战。这不仅影响处理速度,还可能导致系统崩溃或性能严重下降。为了有效应对这一问题,本文汇总了几种实用的策略,帮助开发者和数据处理专业人员高效管…

深入学习和理解Django视图层:处理请求与响应

title: 深入学习和理解Django视图层:处理请求与响应 date: 2024/5/4 17:47:55 updated: 2024/5/4 17:47:55 categories: 后端开发 tags: Django请求处理响应生成模板渲染表单处理中间件异常处理 第一章:Django框架概述 1.1 什么是Django?…