python3 列表排序 python3 排序

2021-10-11 09:50:10 字數 1793 閱讀 6367

排序

>>> z=[11,34,-12,9,8534,12,434]

>>> z.sort()

>>> z

[-12, 9, 11, 12, 34, 434, 8534]

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

語法sort()方法語法:

list.sort(cmp=none, key=none, reverse=false)

引數引數

cmp -- 可選引數, 如果指定了該引數會使用該引數的方法進行排序。

key -- 主要是用來進行比較的元素,只有乙個引數,具體的函式的引數就是取自於可迭代物件中,指定可迭代物件中的乙個元素來進行排序。

reverse -- 排序規則,reverse = true 降序, reverse = false 公升序(預設)。

>>> y

[[3, 9], [1, 11], [5, 34], [2, 42], [4, 98]]

>>> y=[[1,11],[2,42],[3,9],[4,98],[5,34]]

>>> y.sort(key=lambda item:item[1])

>>> y

[[3, 9], [1, 11], [5, 34], [2, 42], [4, 98]]

>>> z=[,,,]

>>> z

[, , , ]

>>> z.sort(key=lambda item: item.get('length'))

>>> z

[, , , ]

>>> z=[(1,"adsfafd"),(2,"qwer"),(3,"1234asf"),(4,"ew")]

>>> z

[(1, 'adsfafd'), (2, 'qwer'), (3, '1234asf'), (4, 'ew')]

>>> z.sort(key=lambda ele:ele[1])

>>> z

[(3, '1234asf'), (1, 'adsfafd'), (4, 'ew'), (2, 'qwer')]

>>> z.sort(key=lambda ele:len(ele[1]))

>>> z

[(4, 'ew'), (2, 'qwer'), (3, '1234asf'), (1, 'adsfafd')]

>>> z.sort(key=lambda ele:len(ele[1]),reverse=true)

>>> z

[(3, '1234asf'), (1, 'adsfafd'), (2, 'qwer'), (4, 'ew')]

多屬性排序

>>> z=[(1,"adsfafd"),(2,"qwer"),(3,"1234asf"),(4,"ew"),(2,"24")]

>>> z.sort(key=lambda ele:(len(ele[1]),ele[0]))

>>> z

[(2, '24'), (4, 'ew'), (2, 'qwer'), (1, 'adsfafd'), (3, '1234asf')]

#!/usr/bin/python

# 獲取列表的第二個元素

def takesecond(elem):

return elem[1]

# 列表

random = [(2, 2), (3, 4), (4, 1), (1, 3)]

# 指定第二個元素排序

random.sort(key=takesecond)

# 輸出類別

print ('排序列表:', random)

python3列表和字典排序

1.1 列表排序list.sort,改變原始列表的順序,reverse按降序排列 list.sort key none,reverse false 如下 所有學生成績,按數學成績排序 students students.sort key lambda item item.get math rever...

python3 列表練習

python 列表綜合練習 使用 python 語言建立空列表 score,按學號順序 由小到大 儲存多個學生 一門課程的考試成績。呼叫列表操作的常用函式實現以下功能 1 建立乙個空列表 score 68,87,92,100,76,88,54,89,76,61 3 輸出score 列表中第 3 個元...

python3 列表函式

python中列表是可變的,這是它區別於字串和元組的最重要的特點,一句話概括即 列表可以修改,而字串和元組不能。列表函式 含義把乙個元素新增到列表的結尾,相當於 a len a x list.extend l 通過新增指定列表的所有元素來擴充列表,相當於 a len a l。list.insert ...