python将list排序的方法有哪些

发布时间:2020-08-10 15:28:20

来源:亿速云

阅读:79

作者:小新

小编给大家分享一下python将list排序的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

python提供了对list排序的两种方法

1、使用list内建函数sort排序list.sort(key=None,reverse=False)

eg:In [57]: l=[27,47,3,42,19,9]

In [58]: l.sort()

In [59]: l

Out[59]: [3, 9, 19, 27, 42, 47]

上面这种是直接对l列表里面的元素排序,sort()函数还提供了一个key参数,这个参数的值是一个函数,这个函数只能有一个返回值,且返回值用来进行比较。 这个技术是快速的因为key指定的函数将准确地对每个元素调用。In [53]: L = [('b',6),('a',1),('c',3),('d',4)]

In [54]: L.sort(key=lambda x:x[1])

In [56]: L

Out[56]: [('a', 1), ('c', 3), ('d', 4), ('b', 6)]

上面那段话,再结合这个例子,我是这样理解的:匿名函数lambda x:x[1]相当于:def f(x):

return x[1]

key参数接受列表L里的每个元素的第二个参数,根据第二个参数的排序,确定整体的排序。也就是说,设置了key参数后,key接收的值代表了整体,排序的标准就变成了对key所接收的值进行排序。

2、使用python内置函数sorted排序

sorted方法和sort方法很相似,不同的是,sorted不改变原来的列表,并返回一个排好序的列表。而list.sort()是改变了原有的列表。还有就是,list.sort()只能对列表排序,而sorted()可以对其他数据结构排序。In [62]: l=[27,47,3,42,19,9]

In [63]: sorted(l)

Out[63]: [3, 9, 19, 27, 42, 47]

sorted方法同样可以用key参数,用法也是一样的。In [68]: data=[{'name':'Abbie','score':99},{'name':'Ivy','score':80}]

In [69]: sorted(data,key=lambda x:x['score'])

Out[69]: [{'name': 'Ivy', 'score': 80}, {'name': 'Abbie', 'score': 99}]

以上是python将list排序的方法有哪些的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

list排序方法python_python将list排序的方法有哪些相关推荐

  1. list排序方法python_python list 排序的两种方法及实例讲解

    对 list 进行排序,Python 提供了两个方法: 方法1. 用 list 的内建函数 list.sort 进行排序 list.sort(func=None, key=None, reverse= ...

  2. 使用定制的NSDictionary的方法,对NSArray进行排序(附:数组排序两种常见方法)

    NSArray中存放的是NSDictionary,可以使用策略的方法对NSDictionary进行定制,增加比较的方法.然后调用NSArray的sortUsingSelector方法对数组进行排序,这 ...

  3. C++ 十大经典排序算法原理及模板之STL方法实现以及稳定性分析

    写在前面: 1.本文中默认排序为升序,降序的原理类似. 2.如果程序直接复制到vs出现无法识别标记的问题,解决方法在这:vs无法识别标记的解决方法 3.本文的算法都是自己用stl实现的,疏漏之处还请指 ...

  4. js排序的时间复杂度_经典排序方法的python实现和复杂度分析

    1.冒泡排序: 冒泡排序算法的运作如下: 比较相邻的元素.如果第一个比第二个大(升序),就交换他们两个. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.这步做完后,最后的元素会是最大的数 ...

  5. 【数据结构】排序相关题目及各种排序方法的总结

    [数据结构之排序] 常用的排序方法有:直接插入排序.希尔排序.冒泡排序.快速排序.简单选择排序.树形选择排序.堆排序.归并排序.基数排序 提示:如有不理解的知识点,请看B站最好的数据结构老师王卓老师的 ...

  6. Java黑皮书课后题第8章:*8.16(对二维数组排序)编写一个方法,使用下面的方法头对二维数组排序。这个方法首先按行排序,然后按列排序

    *8.16(对二维数组排序)编写一个方法,使用下面的方法头对二维数组排序.这个方法首先按行排序,然后按列排序 题目 题目描述 破题 代码 运行实例 题目 题目描述 *8.16(对二维数组排序)编写一个 ...

  7. Java黑皮书课后题第7章:**7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串。编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串

    **7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串.编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串 题目 题目描述 破题 代码 运行实例 题目 题目描 ...

  8. Java黑皮书课后题第7章:**7.18(冒泡排序)使用冒泡排序算法编写一个排序方法。编写一个测试程序,读取10个double型的值,调用这个方法,然后显示排序好的数字

    **7.18(冒泡排序)使用冒泡排序算法编写一个排序方法.编写一个测试程序,读取10个double型的值,调用这个方法,然后显示排序好的数字 题目 题目描述 冒泡排序法 / 下沉排序法 破题 代码 运 ...

  9. python 类属性排序_Python实现多属性排序的方法

    多属性排序: 把需要排序的属性拿出来作为一个 tuple,主要的放前面,次要的放后面. 假如某对象有n个属性,那么先按某规则对属性a进行排序,在属性a相等的情况下再按某规则对属性b进行排序,以此类推. ...

最新文章

  1. Nginx+Keepalived+Tomcat之动静分离的web集群
  2. 一文读懂分库分表的技术演进(最佳实践)
  3. Spring JPA使用CriteriaBuilder动态构造查询
  4. 搭建FastDFS分布式文件方式一(Docker版本)
  5. lt、le、eq、ne、ge、gt的含义
  6. mysql的natural join_MySQL基础之Natural Join用法
  7. WiFi网络编程(带OTA功能)
  8. 第七节:利用CancellationTokenSource实现任务取消和利用CancellationToken类检测取消异常。
  9. Beam概念学习系列之Pipeline 数据处理流水线
  10. java web windows_WinSW让你的JavaWEB程序作为Windows服务启动!
  11. 椭圆极点极线性质_笔记:关于极点极线的一些思考
  12. 计算时间间隔分钟_九个小技巧,玩转Excel的时间计算
  13. Ingenuous Cubrency UVA 11137
  14. 论文阅读笔记|A view-free image stitching network
  15. 关于SOTIF预期功能安全的理解
  16. iOS 更改webView文字颜色丶文字大小丶背景色的方法
  17. 利用Python在网上接单,兼职也能月薪过万,真的假的?
  18. 特征锦囊:怎么找出数据集中有数据倾斜的特征?
  19. 爲什麽一个标准的反相器中PMOS管的寬長比要比N管大
  20. abp过滤规则android,撰写 Adblock Plus 过滤规则

热门文章

  1. ORA-28000: the account is locked-的解决办法
  2. Sql语句里的递归查询
  3. sql server 2008学习6 更复杂的查询
  4. Android关掉多个activity,Android应用开发之Android Activity栈管理 制定关闭某一个Activity,关闭所有Activit...
  5. 将JSON数据转换成JAVA的实体类
  6. MySQL锁的用法之行级锁
  7. 对一千万条数据进行排序---编程珠玑第二版 第一章
  8. Git .gitignore文件忽略(自己做过测试了)
  9. C的动态优化 约瑟夫环
  10. db2 oracle mysql sqlserver_mysql、sqlserver、db2、oracle、hsql数据库获取数据库连接方法及分页函数...