利用Python中的sorted函数进行列表元素排序
Python中的sorted函数是常用的序列排序函数,它可以对列表、元组、字典等序列类型进行排序,排序结果可以按升序或降序排列。该函数的语法如下:
sorted(iterable, key=None, reverse=False)
其中,参数iterable是待排序的序列,key是指定的排序关键字,reverse是排序方式,True表示降序排列,False表示升序排列。本文以列表为例,介绍如何使用sorted函数对列表元素进行排序。
1. 对整数列表升序排序
首先创建一个整数列表,使用sorted函数对其进行升序排序,代码如下:
a = [3, 1, 4, 2, 5] b = sorted(a) print(b)
输出结果为:[1, 2, 3, 4, 5]
2. 对浮点数列表降序排序
接下来创建一个浮点数列表,使用sorted函数对其进行降序排序,代码如下:
c = [3.2, 1.5, 4.8, 2.7, 5.3] d = sorted(c, reverse=True) print(d)
输出结果为:[5.3, 4.8, 3.2, 2.7, 1.5]
3. 对字符串列表按长度升序排序
创建一个字符串列表,使用sorted函数按长度升序排序,代码如下:
e = ['hello', 'world', 'python', 'code', 'tips'] f = sorted(e, key=len) print(f)
输出结果为:['code', 'tips', 'hello', 'world', 'python']
这里的key参数指定了排序关键字,即按字符串长度排序。
4. 对字典列表按value降序排序
创建一个字典列表,使用sorted函数按value降序排序,代码如下:
g = [{'name': 'Tom', 'score': 80},
{'name': 'Lucy', 'score': 90},
{'name': 'Jack', 'score': 85},
{'name': 'Mary', 'score': 82}]
h = sorted(g, key=lambda x:x['score'], reverse=True)
print(h)
输出结果为:[{'name': 'Lucy', 'score': 90}, {'name': 'Jack', 'score': 85}, {'name': 'Mary', 'score': 82}, {'name': 'Tom', 'score': 80}]
这里的key参数使用了lambda表达式,指定了以score为排序关键字。
总结
本文介绍了如何使用Python中的sorted函数对列表元素进行排序,包括对整数列表、浮点数列表、字符串列表和字典列表等的排序。需要注意的是,sorted函数返回的是一个新的已排序的列表,原列表并没有改变。同时,sorted函数也支持对元组进行排序,使用方法类似。掌握了sorted函数,可以更方便地进行序列排序。
