python中根据数组排序可以通过使用sort()方法或sorted()函数,其中sort()方法对原数组进行升序排序,sorted()函数返回一个排序后的副本;指定排序顺序时可使用reverse=true参数;自定义排序规则时需提供一个接收两个数组元素并返回比较结果的函数。
Python 中根据数组排序
如何根据数组排序?
Python 中可以通过使用 sort() 方法或 sorted() 函数对数组进行排序。
使用 sort() 方法
sort() 方法对原数组进行排序。它直接修改数组。
# 创建一个数组 arr = [5, 2, 8, 3] # 使用 sort() 方法对数组进行排序(升序) arr.sort() # 打印排序后的数组 print(arr) # 输出:[2, 3, 5, 8]
使用 sorted() 函数
sorted() 函数返回一个排序后的数组,而不修改原数组。
# 创建一个数组 arr = [5, 2, 8, 3] # 使用 sorted() 函数对数组进行排序(升序) sorted_arr = sorted(arr) # 打印排序后的数组 print(sorted_arr) # 输出:[2, 3, 5, 8]
指定排序顺序
默认情况下,sort() 方法和 sorted() 函数都按升序对数组进行排序。要按降序排序,可以使用 reverse=True 参数。
# 使用 sort() 方法按降序对数组进行排序 arr.sort(reverse=True) # 使用 sorted() 函数按降序对数组进行排序 sorted_arr = sorted(arr, reverse=True)
自定义排序函数
还可以通过提供自定义排序函数来指定排序规则。该函数将接收两个数组元素,并返回比较结果。
# 定义一个自定义排序函数,按元素的长度进行排序 def sort_by_length(a, b): return len(a) - len(b) # 使用 custom_sort 方法对数组进行排序(升序) arr.sort(key=sort_by_length)