欢迎访问宙启技术站
智能推送

Python的sorted函数用法及示例?

发布时间:2023-06-24 18:50:27

Python语言中的sorted()函数是非常方便的一个函数,它可以帮助我们非常快捷地对任何可迭代对象进行排序。sorted()函数不仅可以对列表进行排序,还能对元组、字典、集合等进行排序。让我们看看它的使用方法和一些示例。

# sorted()函数的使用方法

使用sorted()函数非常简单,只需将一个可迭代对象(比如列表、元组、字典等)作为参数传给sorted()函数,并设置可选参数来指定排序方式和排序的关键字。

sorted(iterable, key=None, reverse=False)

其中,iterable是可以迭代的对象;key是用来指定排序关键字,比如使用lambda函数来实现自定义排序;reverse则用来指定是升序排列还是降序排列。下面是一个示例:

# 示例1:对列表进行升序排列

lst = [8, 5, 3, 9, 0, 2, 1]

res = sorted(lst)

print(res)  # [0, 1, 2, 3, 5, 8, 9]

# 示例2:对元组进行降序排列

tup = (8, 5, 3, 9, 0, 2, 1)

res = sorted(tup, reverse=True)

print(res)  # [9, 8, 5, 3, 2, 1, 0]

# 示例3:对字典按值进行升序排列

dic = {'a': 3, 'c': 1, 'b': 2}

res = sorted(dic.items(), key=lambda x: x[1])

print(res)  # [('c', 1), ('b', 2), ('a', 3)]

在这些示例中,我们分别对列表、元组、字典按照不同的方式进行排序。sorted()函数的调用方式都是一样的,只要传入不同的参数就能实现不同的排序方式。

# 示例4:对学生信息按照分数降序排列

students = [

    {'name': 'Tom', 'score': 80},

    {'name': 'John', 'score': 90},

    {'name': 'Jane', 'score': 70},

    {'name': 'Mike', 'score': 60},

    {'name': 'Lee', 'score': 85}

]

res = sorted(students, key=lambda x: x['score'], reverse=True)

print(res)

在这个示例中,我们有一个包含学生信息的列表,每个元素是一个字典,包括学生姓名和分数。我们想要根据学生的分数进行降序排列,于是我们设置了key参数,指定了使用lambda函数,根据字典中的score字段进行排序。

总的来说,Python中的sorted()函数是非常方便的一个排序函数,能够对各种可迭代对象进行排序,并可以通过关键字参数来自定义排序规则。因此,在使用Python进行数据分析和处理时,sorted()函数是不可或缺的一个工具。