用Python函数如何实现列表排序?
发布时间:2023-09-14 19:00:18
Python中可以使用内置的sorted()函数来对列表进行排序,也可以使用列表的sort()方法来对列表进行排序。
1. 使用sorted()函数进行排序:
sorted()函数接受一个可迭代对象作为输入,返回一个新的已排序的列表。
示例代码:
lst = [4, 2, 7, 1, 9, 5] sorted_lst = sorted(lst) print(sorted_lst)
输出:
[1, 2, 4, 5, 7, 9]
sorted()函数还支持传入key参数来指定排序的依据。key参数接受一个函数,该函数将作用于可迭代对象的每个元素上,返回一个用于排序的值。例如,可以使用key参数按照元素的绝对值进行排序。
示例代码:
lst = [4, -2, 7, 1, -9, 5] sorted_lst = sorted(lst, key=abs) print(sorted_lst)
输出:
[1, -2, 4, 5, 7, -9]
2. 使用sort()方法进行排序:
sort()方法是列表对象的一个方法,用于对列表进行原地排序,即在原列表上进行修改。
示例代码:
lst = [4, 2, 7, 1, 9, 5] lst.sort() print(lst)
输出:
[1, 2, 4, 5, 7, 9]
sort()方法也支持传入key参数来指定排序的依据,使用方式与sorted()函数相同。
另外,sort()方法还支持传入reverse参数来指定排序的顺序,默认为升序。将reverse设置为True可以实现降序排序。
示例代码:
lst = [4, 2, 7, 1, 9, 5] lst.sort(reverse=True) print(lst)
输出:
[9, 7, 5, 4, 2, 1]
综上所述,使用Python函数对列表进行排序的方法有两种:使用sorted()函数返回一个新的排序后的列表,或者使用列表对象的sort()方法对列表进行原地排序。可以根据实际需求选择适合的方法进行列表排序。
