1.sort方法排序原址排序
list.sort(key=None,reverse=False(or True))
當reverse=False時:為正向排序;
當reverse=True時:為反向排序。
默認為False。
2.key:排序關鍵字,值為一個函數,此函數只有一個參數且返回一個值,比如,有一個User對象的list,希望通過對象的user_id樹形進行排序,可以提供一個以User實例作為輸入並輸出對應user_id值得函數給key(即key=lambda u:uuser_id或key=attrgetter(‘user_id’))
3.執行完后會改變原來的list,如果你不需要原來的list,這種效率稍微高點
>>> list = [1,2,3,4,5,6,7,8,9] >>> list [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> import random>>> random.shuffle(list) #打亂順序 >>> list [8, 1, 9, 2, 4, 3, 5, 6, 7] >>> list.sort() #默認是升序排序 >>> list.sort(reverse = True) #降序排序 >>> list [9, 8, 7, 6, 5, 4, 3, 2, 1] >>> list.sort(key = lambda x:len(str(x))) #按轉換成字符串的長度排序 >>> list [9, 8, 7, 6, 5, 4, 3, 2, 1]
4.使用內置函數sorted對列表進行排序並返回新列表
>>> list [9, 8, 7, 6, 5, 4, 3, 2, 1] >>> sorted(list) #升序排序 [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> sorted(list,reverse = True) #降序排序 [9, 8, 7, 6, 5, 4, 3, 2, 1]
5.使用列表對象的reverse方法將元素原地逆序
>>> list [9, 8, 7, 6, 5, 4, 3, 2, 1] >>> list.reverse() >>> list [1, 2, 3, 4, 5, 6, 7, 8, 9]
6.使用內置函數revese方法對列表元素進行你不排列並返回迭代對象
7.使用列表對象的reversed方法對列表元素進行逆序排列並返回迭代對象