一、Python中sort函數的基本用法
my_list = [3, 5, 1, 4, 2] my_list.sort() print(my_list) # 輸出:[1, 2, 3, 4, 5]
sort函數是Python內置函數之一,用於對列表進行排序,默認按照從小到大的順序排序。
sort函數會直接對原列表進行操作,不會創建新的副本。
如果需要對元組或者字典進行排序,可以先將其轉化為列表,再進行排序。
二、sort函數的高級用法——自定義排序規則
sort函數還可以接收一個關鍵字參數key,用於指定自定義排序規則。
students = [('Tom', 80), ('Jerry', 90), ('Bob', 70)] students.sort(key=lambda x: x[1]) print(students) # 輸出:[('Bob', 70), ('Tom', 80), ('Jerry', 90)]
上述代碼中,我們傳入了一個lambda函數作為key參數,lambda函數的作用是以每個元組的第二個元素作為排序的依據,從小到大排序。
除了lambda函數外,我們還可以傳入一個普通函數作為key參數,用於更複雜的自定義排序規則。
三、sort函數的高級用法——倒序排序
除了默認的從小到大排序,sort函數還可以通過reverse參數指定從大到小的倒序排序。
my_list = [3, 5, 1, 4, 2] my_list.sort(reverse=True) print(my_list) # 輸出:[5, 4, 3, 2, 1]
四、sort函數的時間複雜度
sort函數使用的是Timsort算法,時間複雜度為O(nlogn),具有較高的排序效率。
對於小規模數據的排序,可以使用Python內置的sorted函數,其基本用法與sort函數相同。
my_list = [3, 5, 1, 4, 2] sorted_list = sorted(my_list) print(sorted_list) # 輸出:[1, 2, 3, 4, 5]
五、小結
Python內置的sort函數可以快速對列表進行排序,支持自定義排序規則和倒序排序。
通過與sorted函數的比較,可以選擇合適的函數進行排序操作。
總之,掌握sort函數的用法有助於提高Python編程效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/286833.html