檢視上一節:匿名函數
sort函數
該方法用于對清單中的元素進行排序。
l = ['bb','aaaa','c','ddddddddd','fff']
l.sort()
print(l)
執行結果為:

sort()方法預設是直接比較清單中的元素的大小。
如果是比較其他内容,比如字元串的長度,可以通過關鍵字key來操作:
在sort()可以接收一個關鍵字參數 : key;key需要一個函數作為參數,當設定了函數作為參數,每次都會以清單中的一個元素作為參數來調用函數,并且使用函數的傳回值來比較元素的大小。
l = ['bb','aaaa','c','ddddddddd','fff']
l.sort(key=len) # 以字元串的長度排序
print(l)
示例二:有不同的資料類型時的排序。
l = [2,5,'1',3,'6','4']
l.sort(key=int) # 強轉為int類型比較
print(l)
顯示的結果還是原來的元素,說明元素并沒有被改變,而是在比較的時候換了一個身份而已。
sorted()
這個函數和sort()的用法基本一緻,但是sorted()可以對任意的序列進行排序。并且使用sorted()排序不會影響原來的對象,而是傳回一個新對象。
l = [2,5,'1',3,'6','4']
print('排序前:',l)
print(sorted(l,key=int))
print('排序後:',l)
可以看到,sorted不會影響清單元素本身,隻是進行一個排序,并傳回一個新的清單。
點選檢視配套視訊課程
檢視更多内容,請訂閱
python學習站官方技術圈!