Python 自动化办公实战课
尹会生
前游戏公司技术总监,前新浪网研发中心技术经理
21781 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 37 讲
Python 自动化办公实战课
15
15
1.0x
00:00/00:00
登录|注册

10|按指定顺序给词语排序,提高查找效率

基于值来排序
基于键来排序
简化自定义函数的定义和调用
lambda表达式
sorted()函数能够支持的数据类型非常多
sorted()函数不会对原有的列表进行修改
默认排序方式
字典类型的排序方式
列表+元组的排序方式
支持更多的排序方式和更复杂的数据类型
注意事项
sorted()函数的默认排序是按照从小到大的顺序进行排序的
自定义排序
默认排序
思考题
sorted()函数实现排序
按指定顺序给词语排序,提高查找效率

该思维导图由 AI 生成,仅供参考

你好,我是尹会生。
之前我在游戏行业工作的时候,经常需要取得用户在线时长 TOP3、用户战斗力 TOP5、用户完成任务数量 TOP10 等数据,相信你在工作中也会有遇到从大量数据取得 TopN 这类需求。
提取 TopN 的操作,本质上是对大量数据先进行排序,然后根据排序的结果取出前 N 个值。而实现提取 TopN 的值,用 Python 来实现会非常高效,这节课,我就来讲一讲具体怎么操作。

使用 sorted() 函数实现排序

在 Python 中,已经内置了排序函数 sorted() 函数,它是 Python 中实现排序最简单且最直接的形式,可以解决 80% 的排序问题。那么,我们就来学习一下怎么用 sorted() 函数对常见的数据类型进行排序。
先看 sorted() 函数的定义。
sorted(iterable, cmp=None, key=None, reverse=False)
sorted 函数共有四个参数,第一个参数是要排序的对象,后面三个参数是排序的方式。
如果要为某个对象排序的话,你可以直接将它作为 sorted() 函数的第一个参数,返回结果会将对象的值进行从小到大的排序。
如果 sorted() 返回的排序结果不满足你的需要,比如你想要从大到小的排序,那你就可以利用后面三个参数来改变排序的方式,实现自定义排序。
所以今天这节课,我会带你学习怎么使用 sorted() 函数实现默认排序和自定义排序,来解决你实际工作中遇到的多种排序问题。我们先来看怎么使用 sorted() 实现默认排序。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

Python中的sorted()函数是一个强大的排序工具,能够高效地对各种数据类型进行排序和提取TopN值。除了默认的从小到大排序方式,sorted()函数还支持自定义排序,通过lambda表达式实现简洁的排序功能。对于列表+元组的组合数据类型,可以通过自定义排序字段实现排序需求。而对于字典类型,可以基于键或值进行排序,并通过sorted()函数轻松实现。此外,文章还提到了对海量数据进行排序时的两条建议,以及思考题引发读者思考。通过掌握sorted()函数的使用方法,读者可以更灵活地应对实际工作中的排序问题。文章内容涵盖了sorted()函数的灵活性和强大功能,为读者提供了丰富的排序技巧和应用场景。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 自动化办公实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(3)

  • 最新
  • 精选
  • Soul of the Dragon
    关于思考题,我猜可以是照顾到用户的实际需求吧,并不是什么情况下都需要对数据进行排序的,只要能实现排序的功能,用户可以自行对数据进行排序。

    作者回复: 照顾到用户的实际需求是一方面,这方面你的理解是对的;还有一方面要考虑排序对计算机资源的开销,随着数据增加,排序的时间开销也会有相应增加(增加多少要根据具体算法和数据长度评估排序时间复杂度),所以在不需要排序时,我们还是需要一些能替我们存储数据,但是不需要自动排序的数据类型的

    2021-03-04
    1
  • 谢韬 Fragos
    将现实世界的这些问题,变成计算机可以运行的程序,中间的桥梁就是排序算法。有第一种算法被称为冒泡排序,因为每一次选出一个最好的,如同从水里冒出的气泡。第二种被称为插入排序,因为每一次要找到合适的位置插入。以冒泡排序为例,之所以慢,是因为每一次选出一个最大的数,都要和其它所有的数字相比,其实并不需要这么麻烦,要想提高效率,就要减少数据之间的相互比较。
    2022-03-12
    1
  • ifelse
    学习打卡
    2023-07-08归属地:浙江
收起评论
显示
设置
留言
3
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部