10|按指定顺序给词语排序,提高查找效率
尹会生
该思维导图由 AI 生成,仅供参考
你好,我是尹会生。
之前我在游戏行业工作的时候,经常需要取得用户在线时长 TOP3、用户战斗力 TOP5、用户完成任务数量 TOP10 等数据,相信你在工作中也会有遇到从大量数据取得 TopN 这类需求。
提取 TopN 的操作,本质上是对大量数据先进行排序,然后根据排序的结果取出前 N 个值。而实现提取 TopN 的值,用 Python 来实现会非常高效,这节课,我就来讲一讲具体怎么操作。
使用 sorted() 函数实现排序
在 Python 中,已经内置了排序函数 sorted() 函数,它是 Python 中实现排序最简单且最直接的形式,可以解决 80% 的排序问题。那么,我们就来学习一下怎么用 sorted() 函数对常见的数据类型进行排序。
先看 sorted() 函数的定义。
sorted 函数共有四个参数,第一个参数是要排序的对象,后面三个参数是排序的方式。
如果要为某个对象排序的话,你可以直接将它作为 sorted() 函数的第一个参数,返回结果会将对象的值进行从小到大的排序。
如果 sorted() 返回的排序结果不满足你的需要,比如你想要从大到小的排序,那你就可以利用后面三个参数来改变排序的方式,实现自定义排序。
所以今天这节课,我会带你学习怎么使用 sorted() 函数实现默认排序和自定义排序,来解决你实际工作中遇到的多种排序问题。我们先来看怎么使用 sorted() 实现默认排序。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
Python中的sorted()函数是一个强大的排序工具,能够高效地对各种数据类型进行排序和提取TopN值。除了默认的从小到大排序方式,sorted()函数还支持自定义排序,通过lambda表达式实现简洁的排序功能。对于列表+元组的组合数据类型,可以通过自定义排序字段实现排序需求。而对于字典类型,可以基于键或值进行排序,并通过sorted()函数轻松实现。此外,文章还提到了对海量数据进行排序时的两条建议,以及思考题引发读者思考。通过掌握sorted()函数的使用方法,读者可以更灵活地应对实际工作中的排序问题。文章内容涵盖了sorted()函数的灵活性和强大功能,为读者提供了丰富的排序技巧和应用场景。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 自动化办公实战课》,新⼈⾸单¥59
《Python 自动化办公实战课》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(3)
- 最新
- 精选
- Soul of the Dragon关于思考题,我猜可以是照顾到用户的实际需求吧,并不是什么情况下都需要对数据进行排序的,只要能实现排序的功能,用户可以自行对数据进行排序。
作者回复: 照顾到用户的实际需求是一方面,这方面你的理解是对的;还有一方面要考虑排序对计算机资源的开销,随着数据增加,排序的时间开销也会有相应增加(增加多少要根据具体算法和数据长度评估排序时间复杂度),所以在不需要排序时,我们还是需要一些能替我们存储数据,但是不需要自动排序的数据类型的
2021-03-041 - 谢韬 Fragos将现实世界的这些问题,变成计算机可以运行的程序,中间的桥梁就是排序算法。有第一种算法被称为冒泡排序,因为每一次选出一个最好的,如同从水里冒出的气泡。第二种被称为插入排序,因为每一次要找到合适的位置插入。以冒泡排序为例,之所以慢,是因为每一次选出一个最大的数,都要和其它所有的数字相比,其实并不需要这么麻烦,要想提高效率,就要减少数据之间的相互比较。2022-03-121
- ifelse学习打卡2023-07-08归属地:浙江
收起评论