"""
sorted(iterable, key=None, reverse=False)
"""
# 参数说明:
# iterable -- 可迭代对象。
# key -- 关键函数:key形参用来指定在进行比较之前要在每个列表元素上进行调用的函数。
# key 形参的值应该是一个函数,返回一个用于排序的键。这种技巧速度很快,因为对于每个输入记录只会调用一次key函数。
# reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
# 返回值
# 返回重新排序的列表。
# 示例代码1
string = 'This is a test string from Andrew'
print(sorted(string.split())) # ['Andrew', 'This', 'a', 'from', 'is', 'string', 'test']
print(sorted(string.split(), key=str.lower)) # ['a', 'Andrew', 'from', 'is', 'string', 'test', 'This']
# 示例代码2
# 一种常见的模式是使用对象的一些索引作为键对复杂对象进行排序。例如:
data_tuples = [
('白展堂', '白玉盗圣', 26),
('李大嘴', '知名厨子', 22),
('吕秀才', '关中大侠', 21),
]
print(sorted(data_tuples, key=lambda tps: tps[2], reverse=True)) # sort by the three para!
# 输出:
# [('白展堂', '白玉盗圣', 26), ('李大嘴', '知名厨子', 22), ('吕秀才', '关中大侠', 21)]
# 示例代码3
class Student:
def __init__(self, name, grade, age):
self.name = name
self.grade = grade
self.age = age
def __repr__(self):
return repr((self.name, self.grade, self.age))
student_objects = [
Student('白展堂', '葵花点穴', 26),
Student('李大嘴', '秀莲神掌', 21),
Student('燕小六', '七舅姥爷', 19),
]
print(sorted(student_objects, key=lambda student: student.age)) # sort by age
# [('燕小六', '七舅姥爷', 19), ('李大嘴', '秀莲神掌', 21), ('白展堂', '葵花点穴', 26)]
网站首页 > 基础教程 正文
猜你喜欢
- 2024-07-26 Python实现排行榜功能(python 排名函数)
- 2024-07-26 python集合set() 数据增册改查统计序循常用方法和数学计算
- 2024-07-26 Python 学习:常用函数整理(python常用数学函数)
- 2024-07-26 Python教程-列表排序(python怎样对列表排序)
- 2024-07-26 一文学会python编程中的一种数据结构——列表(Ⅱ)
- 2024-07-26 Python Lambda 表达式:小巧而强大的匿名函数
- 2024-07-26 python函数参数定义中的这两个分隔符,还有人不知道吗?
- 2024-07-26 外婆都能学会的Python教程(二十五):Python几种函数(重要)
- 2024-07-26 外婆都能学会的Python教程(二十六):Python中的函数式编程
- 2024-07-26 Python 知识点 #14 - sorted()函数
- 03-14从0到1体验Jenkins+Docker+Git+Registry实现CI自动化发布
- 03-14教你测试开发丨测试小白也能听懂的Docker讲解和应用
- 03-14Docker安装及mysql、redis实战(docker安装mysql5.7)
- 03-14Docker技术:大神整理——Harbor私服搭建和使用
- 03-14Springboot项目使用docker部署(springboot docker部署)
- 03-14Linux环境通过Dockerfile创建Tomcat镜像
- 03-14终于有人把Docker讲清楚了,Docker入门教程,原来这么简单...
- 03-14linux下面安装docker(linux安装docker报错)
- 最近发表
-
- 从0到1体验Jenkins+Docker+Git+Registry实现CI自动化发布
- 教你测试开发丨测试小白也能听懂的Docker讲解和应用
- Docker安装及mysql、redis实战(docker安装mysql5.7)
- Docker技术:大神整理——Harbor私服搭建和使用
- Springboot项目使用docker部署(springboot docker部署)
- Linux环境通过Dockerfile创建Tomcat镜像
- 终于有人把Docker讲清楚了,Docker入门教程,原来这么简单...
- linux下面安装docker(linux安装docker报错)
- DeepSeek:一分钟教会你部署Tomcat
- Docker 安装Mysql(流程、注意点、实例)
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)