优草派 > Python

Python 列表排序方法reverse、sort、sorted详解

李嘉琪         优草派

本文将介绍Python中列表排序方法reverse、sort和sorted的使用。首先,reverse是针对列表本身进行排序,即反转列表元素的顺序;sort是列表的一个方法,可对列表按照升序或降序进行排序;而sorted函数则可对列表进行排序并返回一个新列表。此外,本文还介绍了如何使用关键字参数进行排序和如何对列表中的对象进行排序。

Python 列表排序方法reverse、sort、sorted详解

reverse方法:

reverse方法是列表自带的函数,它可以反转列表中的元素。例如:

`a = [3,2,1]

a.reverse()

print(a)`

输出结果为:

`[1, 2, 3]`

sort方法:

sort方法是列表的一个方法,它可以按照升序或者降序进行排序。例如:

`b = [3,2,1]

b.sort()

print(b)`

输出结果为:

`[1, 2, 3]`

sorted函数:

sorted函数可对列表进行排序并返回一个新列表,不会对原列表进行改动。例如:

`c = [3,2,1]

d = sorted(c)

print(c)

print(d)`

输出结果为:

`[3, 2, 1]

[1, 2, 3]`

使用关键字参数进行排序:

除了默认的升序排序和降序排序,sort和sorted还支持通过传递关键字参数来进行排序。

例如:

```

e = [{'name': 'Jack', 'age': 20}, {'name': 'Peter', 'age': 25}, {'name': 'Tom', 'age': 18}]

e.sort(key=lambda x:x['age'])

print(e)

```

输出结果为:

`[{'name': 'Tom', 'age': 18}, {'name': 'Jack', 'age': 20}, {'name': 'Peter', 'age': 25}]`

对对象进行排序:

对于一个自定义的对象列表,我们可以通过自定义比较函数的方式来进行排序。

例如:

```

class Student:

def __init__(self, name, age):

self.name = name

self.age = age

def __repr__(self):

return repr((self.name, self.age))

students = [Student('Tom', 20), Student('Jack', 15), Student('Peter', 25)]

def by_age(student):

return student.age

print(sorted(students, key=by_age))

```

输出结果为:

`[('Jack', 15), ('Tom', 20), ('Peter', 25)]`

摘要:Python的列表排序涉及三个方法:reverse、sort和sorted。在使用过程中,需要根据具体需求选择使用哪种方法,如需对原列表进行改动则选择reverse和sort方法,否则则使用sorted函数。除了默认的升序排序和降序排序,还可以使用关键字参数和自定义比较函数进行排序。

关键词:Python列表排序、reverse、sort、sorted、关键字参数、自定义比较函数

  • 微信好友

  • 朋友圈

  • 新浪微博

  • QQ空间

  • 复制链接

取消
5天短视频训练营
新手入门剪辑课程,零基础也能学
分享变现渠道,助你兼职赚钱
限时特惠:0元
立即抢
新手剪辑课程 (精心挑选,简单易学)
第一课
新手如何学剪辑视频? 开始学习
第二课
短视频剪辑培训班速成是真的吗? 开始学习
第三课
不需要付费的视频剪辑软件有哪些? 开始学习
第四课
手机剪辑app哪个好? 开始学习
第五课
如何做短视频剪辑赚钱? 开始学习
第六课
视频剪辑接单网站APP有哪些? 开始学习
第七课
哪里可以学短视频运营? 开始学习
第八课
做短视频运营需要会什么? 开始学习
【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。

客服热线:0731-85127885

湘ICP备19005950号-1  

工商营业执照信息

违法和不良信息举报

举报电话:0731-85127885 举报邮箱:tousu@csai.cn

优草派  版权所有 © 2024