您现在的位置是:首页 > 数码 > 

python按照绝对值排序

2025-07-19 12:23:33
python按照绝对值排序 sorted用法sorted是Python提供的功能强大的排序函数。满足字符,数字等排序要求。对数字进行排序:list = [-12, -2, -24, 20, 9, 10];print(sorted(list))输出结果:[-24, -12, -2, 10, 20, 9]sorted 作为一个高阶函数,支持传入key。key作为排序的规则.sorted(

python按照绝对值排序

sorted用法

sorted是Python提供的功能强大的排序函数。满足字符,数字等排序要求。

对数字进行排序:

list = [-12, -2, -24, 20, 9, 10];

print(sorted(list))

输出结果:

[-24, -12, -2, 10, 20, 9]

sorted 作为一个高阶函数,支持传入key。key作为排序的规则.

sorted(array,key)

将list 中元素取绝对值之后排序

print(sorted(lsit, key=abs))

输出结果:

[-2, 10, -12, 20, -24, 9]

原数组:

数据

排序结果

list

[-24, -12, -2, 10, 20, 9]

key=abs

[24,12,2,10,20,9] -> [2,10,12,20,24,9]

sorted(list,key = abs)

[-2,10,-12,20,-24,9]

高阶函数允许传入key 作为排序规则。

先经过key规则对数组进行处理之后。在使用sorted进行排序。

sorted排序字符:

listStr = [C, s, a, A, z, O];

# 使用所有的字符转为小写,然后根据ascii码相应字符的排序进行比较

print(sorted(listStr, key=str.lower))

输出结果:

[ a , A , C , O , s , z ]

sorted(listStr,key= str.lower, reverse=True)

reverse:允许对已经经过key处理过的数据进行反转.

# 忽略大小写 排序字符

listStr = [C, s, a, A, z, O];

# 使用所有的字符转为小写,然后根据ascii码相应字符的排序进行比较

print(sorted(listStr, key=str.lower, reverse=True))

输出结果:

[ z , s , O , C , a , A ]

使用operator.itemgetter 作为key进行排序

一个例子:

以下students数组,结构为(名字,成绩,年龄)

students = [( john , A , 15), ( jane , B , 12), ( dave , B , 10)]

对students 按照名字、成绩、年龄排序

使用itemgetter获取数组定下标元素作为key

print(sorted(students, key=itemgetter(1)))

输出结果:

[( john , A , 15), ( jane , B , 12), ( dave , B , 10)]

print(sorted(students, key=itemgetter(1,0)))

输出结果:

[( john , A , 15), ( dave , B , 10), ( jane , B , 12)]

由以上结果可以发现,使用itemgetter获取数组元素作为key处理规则。

计算逻辑为,依次使用itemgetter中参数进行处理数组。

使用lamda表达式作为key

print(sorted(students, key=lambda x: students[1]))

输出结果:

[( john , A , 15), ( jane , B , 12), ( dave , B , 10)]

以上都支持在reverse属性对数据进行反转。

如果解决了你的问题,请点个赞。

不点就在看一遍吧。

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/shuma/805366.html

相关标签:无
上传时间: 2024-01-17 22:49:02
留言与评论(共有 11 条评论)
本站网友 unite
18分钟前 发表
先经过key规则对数组进行处理之后
本站网友 图层混合模式
29分钟前 发表
( dave
本站网友 博客是什么
11分钟前 发表
[-2
本站网友 隆胸手术医院
22分钟前 发表
10)]对students 按照名字
本站网友 中国工业机器人
10分钟前 发表
s
本站网友 堂会官网
30分钟前 发表
9]sorted 作为一个高阶函数
本站网友 梦见自己生孩子
16分钟前 发表
a
本站网友 女人保养皮肤的方法
6分钟前 发表
12)
本站网友 行为乖张
3分钟前 发表
9]原数组
本站网友 黄贵生
7分钟前 发表
key作为排序的规则.sorted(array