sort()函数实现对数组的排序操作?
发布时间:2023-11-26 03:18:43
sort()函数是Python中的内置函数,用于对数组进行排序操作。sort()函数可以用于列表、元组和字符串等可迭代对象。
sort()函数默认使用升序排序方式,也可以通过参数进行自定义排序。
基本语法:
list.sort(key=None, reverse=False)
参数说明:
- key:可选参数,用于指定排序规则。可以通过自定义函数来指定排序规则,该函数接收一个参数并返回一个用于排序的值。如果不指定,则默认为按照元素的大小进行排序。
- reverse:可选参数,用于指定排序顺序。默认为False,表示升序排序;设置为True时表示降序排序。
实例1:对列表进行升序排序
nums = [5, 2, 9, 1, 3] nums.sort() print(nums) # 输出:[1, 2, 3, 5, 9]
实例2:对列表进行降序排序
nums = [5, 2, 9, 1, 3] nums.sort(reverse=True) print(nums) # 输出:[9, 5, 3, 2, 1]
实例3:根据指定的规则对列表进行排序
students = [
{'name': 'Tom', 'score': 80},
{'name': 'Alice', 'score': 90},
{'name': 'John', 'score': 75}
]
students.sort(key=lambda x: x['score'], reverse=True)
print(students)
# 输出:[
# {'name': 'Alice', 'score': 90},
# {'name': 'Tom', 'score': 80},
# {'name': 'John', 'score': 75}
# ]
sort()函数的时间复杂度为O(nlogn),其中n为数组的长度。对于大规模的数组,sort()函数可以高效地进行排序操作。
需要注意的是,sort()函数是原地排序,即排序后会改变原始数组,而不是返回一个新的排序后的数组。如果不想改变原始数组,可以使用sorted()函数进行排序。sorted()函数返回一个新的列表,原始列表不受影响。
综上所述,sort()函数是Python中实现对数组排序的常用函数。
