Python中排序函数sorted的用法
列表对象提供了sort()方法支持原地排序,而内置函数sorted()返回新列表,并不对原列表进行任何修改。
sorted()方法可以对列表、元组、字典、range对象等进行排序。
列表的sort()方法和内置函数sorted()都支持key参数实现复杂排序要求。
下面讲解排序函数sorted的用法,该函数可以对列表、元组、字典、集合排序,返回一个列表。
1. 一维列表(元组或集合)排序
(1) 一维列表排序
# 一维列表(元组或集合)排序
list1 = [12, 5, 3, 20, 17, 25, 10, 30]
a = sorted(list1) # 默认升序排序,返回列表
print(a)
b = sorted(list1, reverse=True) # 降序排序
print(b)
set1 = {
12, 5, 3, 20, 17, 25, 10, 30}
c = sorted(set1) # 返回的都是列表
print(c)
[3, 5, 10, 12, 17, 20, 25, 30]
[30, 25, 20, 17, 12, 10, 5, 3]
[3, 5, 10, 12, 17, 20, 25, 30]
(2) lambda函数
lambda函数是匿名函数,即不需要函数名,格式为 lambda 参数列表:表达式,表达式表示函数要执行的操作。
对于非常简单的函数,或排序时的参数key,通常使用匿名函数实现。
例如:求解a+b,普通函数和匿名函数的写法。
def add(a, b): # 普通函数
return a+b
print(add(2,3))
add = lambda a, b: a + b # 匿名函数
print(add(2,3))
5
5
(3) 把所有奇数都放到前面,偶数都放到后面
# 一维整数列表,把所有奇数都放到前面,偶数都放到后面
list1 = [19, 32, 76, 82, 23, 63, 38, 50, 20, 30, 39, 14, 19, 50, 81, 27, 77, 12, 55, 29]
a = sorted(list1

本文详细介绍了Python内置函数sorted在对一维列表、元组、集合、二维列表(包括字典和字典items())、以及字典排序时的用法,包括基本排序、lambda函数、多关键字排序和使用itemgetter模块的示例。

541

被折叠的 条评论
为什么被折叠?



