Python中的列表函数:sort()
发布时间:2023-06-03 19:48:35
Python中的列表是一种非常常用的数据结构,它可以存储多个元素,并可以进行添加、删除、修改、查找等操作。Python中的列表还可以使用sort()函数进行排序,即将列表中的元素根据一定的规则进行排序。
sort()函数的用法非常简单,例如:
lst = [3, 5, 2, 1, 4] lst.sort() print(lst)
输出结果为:
[1, 2, 3, 4, 5]
sort()默认按照升序排序,也可以使用reverse=True进行降序排序。例如:
lst = [3, 5, 2, 1, 4] lst.sort(reverse=True) print(lst)
输出结果为:
[5, 4, 3, 2, 1]
sort()函数还可以接收一个key参数,用于指定一个函数来生成排序的关键字。例如:
lst = ["apple", "banana", "Watermelon", "Orange"] lst.sort(key=str.lower) print(lst)
输出结果为:
['apple', 'banana', 'Orange', 'Watermelon']
在上面的例子中,我们使用了str.lower函数作为关键字函数,它将所有字符串转换成小写字母并进行排序。
当然,sort()函数也可以用于自定义排序规则。只需要定义一个比较函数,然后将函数名传给sort()函数的key参数即可。例如:
# 定义比较函数
def cmp(x):
return x % 10
lst = [23, 44, 11, 52, 85]
lst.sort(key=cmp)
print(lst)
输出结果为:
[52, 23, 44, 85, 11]
在上面的例子中,比较函数cmp()返回了列表元素除以10的余数作为排序关键字,因此排序结果就是按照余数升序排序。
需要注意的是,sort()函数会直接修改原列表,如果不想修改原列表,可以使用sorted()函数,它会返回一个排序后的新列表。例如:
lst = [3, 5, 2, 1, 4] lst_sorted = sorted(lst) print(lst) print(lst_sorted)
输出结果为:
[3, 5, 2, 1, 4] [1, 2, 3, 4, 5]
总之,sort()函数是Python中非常方便的排序函数,它可以对列表中的元素进行排序,并支持自定义排序规则。需要注意的是,sort()函数会直接修改原列表,如果不想修改原列表,可以使用sorted()函数。
