Python中sorted()函数是一个内置函数,它用于排序一个可迭代对象。sorted()函数可以对列表、元组、字符串和字典等对象进行排序。使用sorted()函数进行排序的时候,我们可以使用sorted()函数的多种参数来控制排序的方式。!n
下面我们从多个角度来分析python中sorted函数的使用方式。

参数说明:
sorted(iterable, key=None, reverse=False)
其中,iterable代表要排序的迭代器,key表示为在每个元素进行比较之前,要应用的函数。reverse为一个布尔类型值,如果设置为True,则列表的排序规则会反转。
使用示例:
# 对列表进行升序排序
a = [3, 2, 8, 5, 1, 4]
a = sorted(a)
print(a)
# 输出 [1, 2, 3, 4, 5, 8]
# 对字符串进行升序排序
b = 'python'
b = sorted(b)
print(b)
# 输出 ['h', 'n', 'o', 'p', 't', 'y']
# 对元组进行升序排序
c = (3, 2, 8, 5, 1, 4)
c = sorted(c)
print(c)
# 输出 [1, 2, 3, 4, 5, 8]
# 对字典进行排序
d = {'apple': 20, 'banana': 10, 'pear': 15}
d_list = sorted(d.items(), key=lambda x: x[1])
print(d_list)
# 输出 [('banana', 10), ('pear', 15), ('apple', 20)]
从上面的使用示例中可以看出,sorted()函数可以非常方便地对不同类型的对象进行排序,并且可以使用关键字参数来自定义排序规则。
关键字参数key的使用:
我们可以使用关键字参数key来自定义排序规则。这个参数需要传一个函数,该函数会在每个元素进行比较之前先应用到元素上。比如下面这个例子。
e = [{'name': 'Tom', 'age': 20}, {'name': 'Jerry', 'age': 15}, {'name': 'Mike', 'age': 25}]
e = sorted(e, key=lambda x: x['age'])
print(e)
# 输出 [{'name': 'Jerry', 'age': 15}, {'name': 'Tom', 'age': 20}, {'name': 'Mike', 'age': 25}]
在上面的代码中,我们使用了lambda函数,对一个list of dict按照年龄升序排序。
关键字参数reverse的使用:
reverse为一个布尔类型值,如果设置为True,则列表的排序规则会反转。下面是一个示例:
f = [3, 2, 8, 5, 1, 4]
f = sorted(f, reverse=True)
print(f)
# 输出 [8, 5, 4, 3, 2, 1]
在上面的代码中,我们使用了reverse参数对一个list进行降序排序。
总结:
sorted()函数是Python内置函数,用于对可迭代对象进行排序操作,支持对列表、元组、字符串和字典等对象进行排序。同时,通过传递关键字参数key和reverse,可以自定义排序规则和实现升降序功能。