Python中的sorted()函数使用示例
发布时间:2023-06-03 12:05:56
在Python中,有许多不同的排序算法可供选择。其中,一个最常用的算法是快速排序。Python内置的sorted()函数使用快速排序算法,提供了一种简单、方便的方法来对列表进行排序。
sorted()函数的基本语法如下:
sorted(iterable[, key][, reverse])
参数说明:
- iterable:待排序的列表、元组、字典等可迭代对象。
- key:可选参数,用于指定排序的关键字。默认值为None。如果指定的话,将根据关键字对每个元素进行排序。
- reverse:可选参数,用于指定排序的顺序。如果为True,则按降序排序,否则按升序排序。默认为False。
下面是sorted()函数的一些使用示例:
1. 对一个列表进行升序排序
lst = [5, 2, 8, 1, 3] sorted_lst = sorted(lst) print(sorted_lst) # 输出 [1, 2, 3, 5, 8]
2. 对一个列表进行降序排序
lst = [5, 2, 8, 1, 3] sorted_lst = sorted(lst, reverse=True) print(sorted_lst) # 输出 [8, 5, 3, 2, 1]
3. 对一个元组进行升序排序
tup = (5, 2, 8, 1, 3) sorted_tup = sorted(tup) print(sorted_tup) # 输出 [1, 2, 3, 5, 8]
4. 对一个字典进行按键升序排序
dic = {'name':'Lisa', 'age': 18, 'height': 165}
sorted_dic = sorted(dic)
print(sorted_dic) # 输出 ['age', 'height', 'name']
5. 对一个字典进行按值降序排序
dic = {'name':'Lisa', 'age': 18, 'height': 165}
sorted_dic = sorted(dic.items(), key=lambda x:x[1], reverse=True)
print(sorted_dic) # 输出 [('height', 165), ('age', 18), ('name', 'Lisa')]
在这个例子中,我们使用了items()方法将字典转换为包含键值对的元组列表。我们还指定了一个关键字函数key,用于对字典中的值进行排序。lambda函数用于从元组中提取值,并对值进行排序。然后我们将reverse参数设置为True,以指定降序排序。
6. 对一个列表中的字符串进行按长度升序排序
lst = ['apple', 'orange', 'banana', 'pear'] sorted_lst = sorted(lst, key=lambda x:len(x)) print(sorted_lst) # 输出 ['pear', 'apple', 'orange', 'banana']
在这个例子中,我们使用了lambda函数将每个字符串转换为其长度。这将用作排序关键字。这将导致结果按长度升序排序。
总结:
这就是Python中使用sorted()函数进行排序的一些示例。sorted()函数可以对列表、元组、字典等可迭代对象进行排序。可以使用key参数指定排序的关键字,也可以使用reverse参数指定排序顺序。
