33 列表常用方法——sort()、reverse()
创始人
2024-11-17 04:04:52
0

列表对象的 sort() 方法用于按照指定的规则对所有元素进行排序,默认规则是所有元素从小到大升序排序;reverse() 方法用于将列表所有元素逆序或翻转,也就是第一个元素和倒数第一个元素交换位置,第二个元素和倒数第二个元素交换位置,以此类推。

x = [2, 12, 120, 240, 10, 2000, 0] print(x)  x.sort(key=lambda i: len(str(i)), reverse=True)  # 按转换成字符串以后的长度降序排序 print(x) x.sort(key=str)  # 按转换成字符串以后的大小升序排序 print(x) x.sort()  # 按默认规则排序 print(x) x.reverse()  # 把所有元素翻转或逆序 print(x) 

在这里插入图片描述

列表对象的 sort() 和 reverse() 分别对列表进行原地排序(in-place sorting)和逆序,没有返回值。 所谓 “原地”,意思是用处理后的数据替换原来的数据,列表首地址不变,列表中元素原来的全部丢失。
如果不想丢失原来的顺序,可以使用内置函数 sorted() 和 reversed()。其中,内置函数 sorted() 返回排序后的新列表,参数 key 和 reverse 的含义与列表方法 sort() 完全相同;内置函数 reversed() 返回一个逆序后的 reversed 对象。充分利用列表对象的 sort() 方法和内置函数 sorted() 的 key 参数,可以实现更加复杂的排序。

gameresult = [['Bob', 95.0, 'A'], ['Alan', 86.0, 'C'],               ['Mandy', 83.5, 'A'], ['Rob', 89.3, 'E']] print(gameresult)  from operator import itemgetter  print(sorted(gameresult, key=itemgetter(2)))  # 按子列表第3个元素进行升序排序 print(sorted(gameresult, key=itemgetter(2, 0))) print(sorted(gameresult, key=itemgetter(2, 0), reverse=True))  x = ["what", "I'am", "sorting", "by"]  # 以第一个列表内容为依据 y = ["something", "else", "to", "sort"]  # 对另一个列表内容进行排序 pairs = zip(x, y)  # 把两个列表中的对应位置元素进行配对  print([i[1] for i in sorted(pairs, key=lambda x: x[0], reverse=True)])  s = [[1, 2, 3], [2, 1, 4], [2, 2, 1]] # 以第二个元素升序,第三个元素降序排序,这里的负号只适用于数值型元素 print((sorted(s, key=lambda i: (i[1], -i[2]))))  t = ['aaaa', 'bc', 'd', 'b', 'ba'] print(sorted(t, key=lambda i: (len(i), i)))  # 先按长度排序,长度一样的正常排序 

在这里插入图片描述

相关内容

热门资讯

第九分钟辅助!天天爱柳州辅助器... 天天爱柳州辅助器是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加我微...
热门推荐!微信小程序蜀山辅助器... 热门推荐!微信小程序蜀山辅助器免费下载(辅助)外挂辅助开挂插件(有挂秘诀)-哔哩哔哩;最新版2026...
第4分钟普及!奇迹陕西辅助器(... 第4分钟普及!奇迹陕西辅助器(透视)原来真的是有挂脚本(推荐开挂软件);奇迹陕西辅助器免费下载原版,...
第八分钟讲解!越乡游金花辅助,... 第八分钟讲解!越乡游金花辅助,九酷众游辅助,细节方法(有挂实锤)-哔哩哔哩1、下载安装好越乡游金花辅...
透视软件!浙江宝宝游戏辅助工具... 透视软件!浙江宝宝游戏辅助工具(辅助)外挂开挂辅助插件(了解有挂)-哔哩哔哩;是一款可以让一直输的玩...
第5分钟发现!桃乐甘肃麻将下载... 《第5分钟发现!桃乐甘肃麻将下载辅助器(辅助)原来有挂软件(必看开挂工具)》 桃乐甘肃麻将下载辅助器...
第8分钟了解!河洛刚次辅助,温... 第8分钟了解!河洛刚次辅助,温州茶苑辅助软件,详细教程(有挂攻略)-哔哩哔哩;无需打开直接搜索加薇1...
热点讨论!新二号辅助软件下载(... 热点讨论!新二号辅助软件下载(辅助)外挂辅助开挂软件(有挂教程)-哔哩哔哩;是一款可以让一直输的玩家...
8分钟解说!网易亲友圈辅助(开... 8分钟解说!网易亲友圈辅助(开挂)原来有挂平台(必看开挂安装);小薇(透视辅助)致您一封信;亲爱网易...
第5分钟开挂!如何在哈灵上辅助... 第5分钟开挂!如何在哈灵上辅助,决战卡五星辅助看牌器,解说技巧(有挂方略)-哔哩哔哩 了解更多开挂安...