1. 程式人生 > >Python List sort()方法

Python List sort()方法

描述

sort() 函式用於對原列表進行排序,如果指定引數,則使用比較函式指定的比較函式。

語法

sort()方法語法:

list.sort(cmp=None, key=None, reverse=False)

引數

  • cmp -- 可選引數, 如果指定了該引數會使用該引數的方法進行排序。
  • key -- 主要是用來進行比較的元素,只有一個引數,具體的函式的引數就是取自於可迭代物件中,指定可迭代物件中的一個元素來進行排序。
  • reverse -- 排序規則,reverse = True 降序, reverse = False 升序(預設)。

返回值

該方法沒有返回值,但是會對列表的物件進行排序。

例項

以下例項展示了 sort() 函式的使用方法:

例項

#!/usr/bin/python # -*- coding: UTF-8 -*- aList = [123, 'Google', 'Runoob', 'Taobao', 'Facebook']; aList.sort(); print "List : ", aList

以上例項輸出結果如下:

List :  [123, 'Facebook', 'Google', 'Runoob', 'Taobao']

以下例項降序輸出列表:

例項

#!/usr/bin/python # -*- coding: UTF-8 -*- # 列表 vowels = ['e', 'a', 'u', 'o', 'i'] # 降序 vowels.sort(reverse=True) # 輸出結果 print '降序輸出:', vowels

以上例項輸出結果如下:

降序輸出: ['u', 'o', 'i', 'e', 'a']

以下例項演示了通過指定列表中的元素排序來輸出列表:

例項

#!/usr/bin/python # -*- coding: UTF-8 -*- # 獲取列表的第二個元素 def takeSecond(elem): return elem[1] # 列表 random = [(2, 2), (3, 4), (4, 1), (1, 3)] # 指定第二個元素排序 random.sort(key=takeSecond) # 輸出類別 print '排序列表:', random

以上例項輸出結果如下:

排序列表:[(4, 1), (2, 2), (1, 3), (3, 4)]

例項

key=(元素1,元素2)時的情形,先按元素1排序,當元素1相同時,在按元素2排序

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 獲取列表的第二個元素
def takeSecond(elem):
    return elem[1]
 
# 列表
random = [(2, 2), (3, 4), (4, 1),(4,2),(4,3),(1,1), (1, 3)]
 
# 指定第二個元素排序
random.sort(key=lambda x: (x[0], x[1]), reverse=True)
# 輸出類別
print '排序列表:', random

-----------------------------------------------

輸出結果:

[email protected]:~/桌面$ python test.py
排序列表: [(4, 3), (4, 2), (4, 1), (3, 4), (2, 2), (1, 3), (1, 1)]