Python中常用的排序函数有哪些
发布时间:2023-06-14 08:04:25
Python中常用的排序函数有:sorted()、sort()、heapq.nlargest()、heapq.nsmallest()、max()、min()、sorted()、bisect.insort()。
1.sorted()函数:对可迭代对象进行排序,返回一个新的已排序列表。可以对列表、元组、字符串、字典等进行排序,还可以传入参数进行自定义排序。例如:
numbers = [8, 4, 2, 9, 1, 5, 7, 6, 3] result = sorted(numbers) print(result) # 输出结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
2. sort()函数:是列表的一个方法,可以将列表本身按指定的方式排序。sort()方法默认是升序排序,还可以传入参数进行自定义排序。例如:
numbers = [8, 4, 2, 9, 1, 5, 7, 6, 3] numbers.sort() print(numbers) # 输出结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
3. heapq模块:heapq.nlargest()和heapq.nsmallest()函数用于在可迭代对象中查找最大和最小的元素。这两个函数的 个参数是要查找的元素个数,第二个参数是要查找的可迭代对象。例如:
import heapq numbers = [8, 4, 2, 9, 1, 5, 7, 6, 3] result = heapq.nlargest(3, numbers) print(result) # 输出结果:[9, 8, 7] result = heapq.nsmallest(3, numbers) print(result) # 输出结果:[1, 2, 3]
4. max()和min()函数:用于查找列表中的最大和最小元素。这两个函数的参数是要查找的列表。例如:
numbers = [8, 4, 2, 9, 1, 5, 7, 6, 3] max_number = max(numbers) print(max_number) # 输出结果:9 min_number = min(numbers) print(min_number) # 输出结果:1
5. bisect模块:用于在已排序的序列中查找元素应该插入的位置,从而保持序列的有序性。bisect.insort()函数用于在已排序的序列中插入元素,需要传入两个参数, 个参数是要插入的序列,第二个参数是要插入的元素。例如:
import bisect numbers = [1, 2, 3, 5, 6, 7] bisect.insort(numbers, 4) print(numbers) # 输出结果:[1, 2, 3, 4, 5, 6, 7]
以上就是Python中常用的排序函数,可以根据不同的需求选择合适的函数进行排序。
